Je veux créer des tables simples, y insérer des valeurs et faire des requêtes. Comment les effectuer dans le terminal?
Je veux créer des tables simples, y insérer des valeurs et faire des requêtes. Comment les effectuer dans le terminal?
Réponses:
Vous créez une base de données en tapant
mysql
À l'invite que vous entrez, vous commencez ensuite par créer votre base de données (comme expliqué par onik dans les commentaires):
CREATE DATABASE dbname
Une fois que vous avez créé cette base de données, vous pouvez l'expérimenter. Vous pouvez simplement taper mysql
dans un terminal et vous pouvez faire tout ce que vous voulez avec sql. Il est possible que vous ayez créé un rôle dans votre base de données avec votre nom d'utilisateur.
Comme décrit dans la réponse de Sauruv, vous pouvez également vous connecter à la base de données comme suit (sans l'espace entre p et votre mot de passe ou mieux, n'utilisez pas l'option -p et vous obtiendrez une invite de mot de passe [crédits aller à onik]):
Syntaxe:
mysql -u user_name -ppassword dbname
-u : Specify mysql database user name
-p : Prompt for password
dbname : Specify database name
Voici la syntaxe pour exécuter l'instruction sql à partir du terminal
Je suppose que vous utilisez MySQL
.
Syntaxe:
mysql -u user_name -p password -e 'SQL Query' database
Clearificance:
-u : Specify mysql database user name
-p : Prompt for password
-e : Execute sql query
database : Specify database name
Exemple:
Si vous souhaitez créer une table, person
alors:
mysql -u root -p -e 'Create table person(PersonID int, LastName varchar(255), FirstName varchar(255))' mydb
où root
est le nom d'utilisateur, mydb
est le nom de la base de données. De même, vous pouvez exécuter n'importe quelle requête que vous souhaitez.
Si vous voulez des insert
valeurs dans person
:
mysql -u root -p -e 'Insert into person(PersonID,LastName,FirstName) Values(100,"Kumar","Saurav")' mydb
Si vous souhaitez sélectionner toutes les informations person
et enregistrer dans un fichier:
mysql -u root -p -e 'Select * from person' mydb > personinfo
Et bien sûr, vous pouvez créer une base de données en utilisant le terminal lui-même
Pour créer la base de données mydb, exécutez la commande suivante dans le terminal:
mysql -u root -p -e 'create database mydb'
il créera silencieusement une base de données mydb sans donner de message / sortie.
Pour répertorier toutes les bases de données, exécutez cette commande dans le terminal:
mysql -u root -p -e 'show databases'
J'espère que cela vous aide .. Répondez si vous avez besoin d'aide supplémentaire ..
mysql est un simple outil en ligne de commande. mysql est en ligne de commande et il est très facile à utiliser. Appelez-le à l'invite de votre interpréteur de commandes comme suit:
$ mysql
Production
mysql>
Vous devrez peut-être fournir le nom d'utilisateur, le mot de passe et le nom d'hôte mysql, utilisez:
$ mysql --user=your-user-name --password=your-password
mysql>
Pour répertorier la base de données, tapez la commande suivante
mysql> show databases;
Production
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
2 rows in set (0.00 sec)
information_schema et mysql sont le nom des bases de données. Pour utiliser ces bases de données et répertorier les tables disponibles, tapez les deux commandes suivantes:
mysql> use mysql;
Production:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
Maintenant, listez les tableaux:
mysql> show tables;
Production:
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| func |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| proc |
| procs_priv |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
17 rows in set (0.00 sec)
mysql>
mycli
mysql
la console par défaut est belle et jolie, mais peut-être plus jolie mycli
(et c'est l'alternative Postgres pgcli
).
Installation : Sur Ubuntu 16.04+ est sur les dépôts officiels:sudo apt install mycli
$ mycli --help
Usage: mycli [OPTIONS] [DATABASE]
A MySQL terminal client with auto-completion and syntax highlighting.
Examples:
- mycli my_database
- mycli -u my_user -h my_host.com my_database
- mycli mysql://my_user@my_host.com:3306/my_database
mycli
Il y a sqlline qui pourrait se connecter à n'importe quel rdbms (Oracle, mysql, postgres, h2 et autres), aussi csv, cassandra, elastic-search, mongo (via apache-calcite).
Il y a une page de démonstration de projet avec de courtes vidéos de démonstration .
Il pourrait être intégré et pas besoin de l'installer.
CREATE DATABASE [dbname]
. De plus, si vous spécifiez le mot de passe sur la ligne de commande (non recommandé, la syntaxe estmysql -u user_name -ppassword database
, sans l'espace entre p et votre mot de passe. Vous pouvez également omettre le mot de passe ici et MySQL vous le demandera, ce qui est plus sûr.