Heim >Datenbank >MySQL-Tutorial >Terminalverwaltung der MySQL-Datenbank auf dem Mac

Terminalverwaltung der MySQL-Datenbank auf dem Mac

php是最好的语言
php是最好的语言Original
2018-08-07 11:42:011778Durchsuche

Öffnen Sie das Terminal und geben Sie den folgenden Befehl ein:

/usr/local/MySQL/bin/mysql -u root -p

wobei root der Benutzername ist.

Der folgende Befehl wird angezeigt:

Enter password:

Wenn Sie Ihr Passwort zu diesem Zeitpunkt noch nicht geändert haben, drücken Sie einfach die Eingabetaste. Andernfalls geben Sie Ihr Passwort ein.
Dadurch erhalten Sie Zugriff auf Ihren Datenbankserver.


1. Betrieb und Verwaltung

Grundlagen der Datentabelle

Datenbankverwaltung

1.1 Datenbank erstellen

create database firstDB;

1.2 show Alle Datenbanken anzeigen

mysql> show databases;+--------------------+| Database           |
+--------------------+| information_schema |
| firstDB            |
| mysql              |
| performance_schema |+--------------------+rows in set (0.00 sec)

1.3 alter changes Database

alter command ändert die Datenbankkodierung:

Die standardmäßig erstellte Datenbank unterstützt standardmäßig keine chinesischen Schriftzeichen. Wenn wir sie zur Unterstützung chinesischer Schriftzeichen benötigen, stellen Sie ihre Codierung auf das UTF8-Format ein:

mysql> ALTER DATABASE testDB CHARACTER SET UTF8;Query OK, 1 row affected (0.00 sec)

1.4 verwenden Sie die Datenbank

mysql> use firstDB;
Database changed

1.5 Die aktuell verwendete Datenbank anzeigen

mysql> select database();
+------------+| database() |
+------------+| firstdb    |
+------------+1 row in set (0.00 sec)

1.6 Datenbank löschen

mysql> drop database firstDB;
Query OK, 0 rows affected (0.00 sec)

2. Datentabellenverwaltung

Wir erstellen zunächst eine Datenbank für unsere zukünftige Verwendung:

mysql> create database testDB;Query OK, 1 row affected (0.00 sec)

Denken Sie nach der Erstellung daran, den Befehl „use“ zum Aufrufen (Verwenden) der Datenbank zu verwenden, da nachfolgende Vorgänge sonst erfolglos bleiben.

2.1 erstellen Tabelle erstellen

mysql> create table PEOPLE (
    -> ID int AUTO_INCREMENT PRIMARY KEY,    -> NAME varchar(20) not null,    -> AGE int not null,    -> BIRTHDAY datetime);                                                     
Query OK, 0 rows affected (0.01 sec)

2.2 Anzeigetabelle anzeigen

Alle Datentabellen in der aktuellen Datenbank anzeigen

mysql> show tables;
+------------------+| Tables_in_testdb |
+------------------+| PEOPLE           |
+------------------+1 row in set (0.00 sec)

2.3 desc Tabellenstruktur anzeigen

mysql> desc PEOPLE    -> ;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)

2.4 alter Tabellenstruktur ändern (hinzufügen, löschen, ändern)
Die standardmäßig erstellte Tabelle tut dies nicht unterstützt chinesische Schriftzeichen, daher muss die Tabellenkodierung auf utf8 eingestellt werden:

mysql> ALTER TABLE KEYCHAIN CONVERT TO CHARACTER SET UTF8;
Query OK, 1 row affected (0.02 sec)
Records: 1  Duplicates: 0  Warnings: 0

2.4.1 Einfügen Spalten (Felder) in der Tabelle hinzufügen

mysql> alter table PEOPLE add star BOOL;Query OK, 0 rows affected (0.02 sec)Records: 0  Duplicates: 0  Warnings: 0

Tipps: In MySQL werden boolesche Typen automatisch in tinyint(1)-Typen konvertiert.

Wir könnten genauso gut desc verwenden, um die Struktur der PEOPLE-Tabelle zu überprüfen:

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | tinyint(1)  | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

Nun, Sie sollten mir glauben, oder?

2.4.2 alter Tabellenfelder (Spaltenfelder) ändern

mysql> alter table PEOPLE MODIFY star int;Query OK, 0 rows affected (0.01 sec)Records: 0  Duplicates: 0  Warnings: 0

Sie können auch die Länge von int(n) angeben, z. B. int (2) .

Wir verwenden erneut desc, um die Struktur der PEOPLE-Tabelle anzuzeigen:

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | int(11)     | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

2.4.3 delete delete table (column) field

mysql> alter table PEOPLE DROP column star;Query OK, 0 rows affected (0.02 sec)Records: 0  Duplicates: 0  Warnings: 0

Überprüfen Sie nach dem Löschen noch einmal die Tabellenstruktur PEOPLE:

mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

Das Feld wurde erfolgreich gelöscht und jetzt können wir das Sternfeld nicht mehr sehen.

2.4.4 umbenennen, Tabellennamen umbenennen

mysql> RENAME TABLE PEOPLE TO NEW_PEOPLE;
Query OK, 0 rows affected (0.00 sec)

2.4.5 null oder nicht null
Ändern Sie das Tabellenfeld, um das Leeren zuzulassen oder zu verbieten:

mysql> ALTER TABLE PEOPLE MODIFY AGE INT(3) NULL;
Query OK, 0 rows affected (0.01 sec)Records: 0  Duplicates: 0  Warnings: 0

Setzen Sie das AGE-Feld der PEOPLE-Tabelle auf „Leer sein lassen“, d. h., dieses Feld muss beim Einfügen nicht eingegeben werden Aufzeichnungen. Ansonsten ist das Gegenteil der Fall.
Das Format lautet: ALTER TABLE MODIFY

mysql> create table newTable select * from PEOPLE;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

Überprüfen wir die Tabellen, die derzeit in der Datenbank vorhanden sind:

mysql> show tables;
+------------------+| Tables_in_testdb |
+------------------+| PEOPLE           || newTable         |
+------------------+2 rows in set (0.00 sec)

3. Datenoperation und -verwaltung

Dieser Vorgang, Einschließlich Hinzufügen, Löschen, Ändern und Überprüfen von Daten.
Die folgenden Befehle wirken sich alle auf die PEOPLE-Tabelle aus.

3.1 Daten hinzufügen (erhöhen)
Die PEOPLE-Tabelle enthält derzeit keine Daten. Es handelt sich um eine leere Datentabelle.
In den Befehl einfügen, um Daten hinzuzufügen:

mysql> insert into PEOPLE VALUES (null, 'Anny', 22, '1992-05-22');
Query OK, 1 row affected (0.00 sec)

Verwenden Sie den Befehl select, um die Tabelle anzuzeigen (wird später vorgestellt). Jetzt sehen wir uns die Daten der PEOPLE-Datentabelle an:

mysql> select * from PEOPLE;
+----+------+-----+---------------------+| ID | NAME | AGE | BIRTHDAY            |
+----+------+-----+---------------------+|  1 | Anny |  22 | 1992-05-22 00:00:00 |
+----+------+-----+---------------------+1 row in set (0.00 sec)

Die Datentabelle enthält jetzt ein Datenelement.

Fügen wir noch ein paar Daten hinzu, wie zum Beispiel:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  3 | Lisa   |  25 | 1989-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+5 rows in set (0.00 sec)

3.2 Daten löschen (delete)

delete-Befehl zum Löschen von Daten:

mysql> delete from PEOPLE where name = 'Lisa';
Query OK, 1 row affected (0.01 sec)

Fragen Sie die PEOPLE-Tabelle erneut ab:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

Die Daten mit dem Namen „Lisa“ sind nicht mehr sichtbar.

3.3 Daten ändern (Ändern)

Aktualisierungsbefehl zum Ändern von Daten:

mysql> update PEOPLE set name='Calvin' where name = 'Garvey';
Query OK, 1 row affected (0.00 sec)Rows matched: 1  Changed: 1  Warnings: 0

Fragen Sie den Inhalt der PEOPLE-Tabelle ab:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

benannt Der Eintrag für „Garvey“ wurde in „Calvin“ geändert.

3.4 Daten abfragen (überprüfen)

Befehl zum Abfragen von Daten auswählen Am einfachsten ist es, alle Daten in der Tabelle abzufragen. Dies ist der Befehl, den wir ursprünglich verwendet haben:

mysql> select * from PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 ||  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+4 rows in set (0.00 sec)

Format: Wählen Sie * aus 2a59fb221d0bc3b07e1e43cec3d4767d aus, * steht für alle Felder.

Sie können bei der Datenabfrage auch die angezeigten (Spalten-)Felder angeben:

mysql> select NAME, AGE, BIRTHDAY from PEOPLE;
+--------+-----+---------------------+| NAME   | AGE | BIRTHDAY            |
+--------+-----+---------------------+| Anny   |  22 | 1992-05-22 00:00:00 |
| Calvin |  23 | 1991-05-22 00:00:00 |
| Nick   |  24 | 1990-05-22 00:00:00 || Rick   |  24 | 1991-05-22 00:00:00 |
+--------+-----+---------------------+4 rows in set (0.00 sec)

Format: Wählen Sie a0d537e11b64625b6fad2dc6709f2e70 aus 2a59fb221d0bc3b07e1e43cec3d4767d.

Der Befehl „select query“ bietet auch viele erweiterte Verwendungsmöglichkeiten, z. B. das Suchen nach eindeutigen Daten (distinct), das Sortieren von Daten nach Bedingungen (order by), das Anzeigen von Daten nach Abfragebedingungen (where) usw. Diese werden im nächsten Artikel hervorgehoben. Bitte beachten Sie meinen Blog.

4. Ansichten verwalten

4.1 Ansichten erstellen

Eine Ansicht ist eine virtuelle Tabelle, die zur Vereinfachung eine oder mehrere Tabellen aus der Datenbank exportiert Operationen an Daten.

mysql> CREATE VIEW PEOPLE_VIEW (
    -> NAME, AGE)
    -> AS SELECT NAME, AGE FROM PEOPLE;

Sehen Sie sich die Ansicht nach erfolgreicher Erstellung an.

PEOPLE          PEOPLE.AGE      PEOPLE.BIRTHDAY PEOPLE.ID       PEOPLE.NAME    mysql> SELECT * FROM PEOPLE_VIEW
    -> ;+--------+-----+
| NAME   | AGE |
+--------+-----+
| Anny   |  22 |
| Calvin |  23 |
| Nick   |  24 |
| Rick   |  24 |
+--------+-----+4 rows in set (0.00 sec)

Wir können auch den DESC-Befehl verwenden, um die Struktur der Ansicht anzuzeigen.

mysql> DESC PEOPLE_VIEW;
+-------+---------+------+-----+---------+-------+| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+| ID    | int(11) | NO   |     | 0       |       |
+-------+---------+------+-----+---------+-------+1 row in set (0.01 sec)

4.2 Ansicht ersetzen

Erstellen oder ersetzen Sie die ursprüngliche Ansicht.

mysql> CREATE OR REPLACE VIEW PEOPLE_VIEW(PEOPLE_ID,PEOPLE_NAME,PEOPLE_AGE) AS SELECT ID,NAME,AGE FROM PEOPLE;
Query OK, 0 rows affected (0.00 sec)

Ansicht nach Erstellung oder Ersetzung anzeigen.

mysql> SELECT * FROM PEOPLE_VIEW;
+-----------+-------------+------------+| PEOPLE_ID | PEOPLE_NAME | PEOPLE_AGE |
+-----------+-------------+------------+|         1 | Anny        |         22 |
|         2 | Calvin      |         23 |
|         4 | Nick        |         24 ||         5 | Rick        |         24 |
+-----------+-------------+------------+4 rows in set (0.00 sec)

4.3 Betriebsansichten

Wenn sich die Ansichtsdaten ändern (Hinzufügen, Löschen, Ändern), ändern sich auch die tatsächlichen Tabellendaten. Mit anderen Worten: Die Operation für die Ansicht sind die Daten der Tabelle, sodass wir die Ansicht als Tabelle behandeln können.

Beispiel: Fügen Sie ein Datenelement in die Ansicht ein.

mysql> INSERT INTO PEOPLE_VIEW VALUES(NULL, 'Kerry', '33');
Query OK, 1 row affected (0.00 sec)

Sehen Sie sich die Ansicht nach dem erfolgreichen Einfügen von Daten an.

mysql> SELECT * FROM PEOPLE_VIEW ;
+-----------+-------------+------------+| PEOPLE_ID | PEOPLE_NAME | PEOPLE_AGE |
+-----------+-------------+------------+|         1 | Anny        |         22 |
|         2 | Calvin      |         23 |
|         4 | Nick        |         24 |
|         5 | Rick        |         24 ||         6 | Kerry       |         33 |
+-----------+-------------+------------+5 rows in set (0.00 sec)

可以在视图上看到我们刚刚插入的数据,现在我们就来验证一下真实的表是否也会作出变化。

mysql> SELECT * FROM PEOPLE;
+----+--------+-----+---------------------+| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 ||  6 | Kerry  |  33 | NULL                |
+----+--------+-----+---------------------+5 rows in set (0.00 sec)

可见,真实的表数据也已经有所改变,刚刚往视图里插入的那一条数据存在于真实表中,真理便是:对视图的操作就是对表的数据。

4.4 删除视图

mysql> DROP VIEW PEOPLE_VIEW;Query OK, 0 rows affected (0.00 sec)

相关推荐:

mac使用终端运行mysql,mysql终端,mysql mac,mysql目录,mysql路径,macmysql

mac使用终端运行mysql,mysql终端,mysql mac,mysql目录,mysql路径

Das obige ist der detaillierte Inhalt vonTerminalverwaltung der MySQL-Datenbank auf dem Mac. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn