Heim >Datenbank >MySQL-Tutorial >Detaillierte Erläuterung der Erstellung, Löschung, Auswahl und Datentypverwendung von MariaDB (MySQL)_MySQL

Detaillierte Erläuterung der Erstellung, Löschung, Auswahl und Datentypverwendung von MariaDB (MySQL)_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-10-09 08:33:39948Durchsuche

1. Einführung in MariaDB (die Einführung in MySQL wird übersprungen)

Das Datenbankverwaltungssystem MariaDB ist ein Zweig von MySQL, der hauptsächlich von der Open-Source-Community verwaltet wird. Es ist unter der GPL lizenziert. Der Zweck von MariaDB besteht darin, vollständig mit MySQL kompatibel zu sein, einschließlich API und Befehlszeile einfacher Ersatz für MySQL. Als Speicher-Engine wird XtraDB (englisch: XtraDB) anstelle von MySQLs InnoDB verwendet. MariaDB wurde von Michael Widenius (englisch: Michael Widenius), dem Gründer von MySQL, entwickelt. Er hatte das von ihm gegründete Unternehmen MySQL AB für 1 Milliarde US-Dollar verkauft. Seitdem wurde SUN von Oracle übernommen fiel ebenfalls in die Hände von Oracle. Der Name MariaDB leitet sich vom Namen von Michael Widenius‘ Tochter Maria ab.

MariaDB Die transaktionsbasierte Maria-Speicher-Engine, die die MyISAM-Speicher-Engine von MySQL ersetzt, verwendet Perconas XtraDB, eine Variante von InnoDB, von der die Entwickler des Forks hoffen, dass sie Zugriff auf die kommende MySQL 5.4 InnoDB-Leistung bietet. Diese Version umfasst außerdem die Speicher-Engines PrimeBase XT (PBXT) und FederatedX.

2. Detaillierte Erläuterung der Erstellung, Löschung, Auswahl und Datentypverwendung von MariaDB (Hinweis: Dieser Artikel demonstriert Root-Rechte)

(1) MariaDB erstellt Datenbank

1.1: Verwenden Sie mysqladmin, um eine Datenbank zu erstellen

[root@test01 10.19.166.166 ~ ] 
# mysqladmin -u root -p create testdb1
Enter password:  // 此处填写MariaDB数据库的密码
 
[root@test01 10.19.166.166 ~ ] 
# mysql
 
MariaDB [(none)]> show databases;
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb1      |<---创建的好的库
+--------------------+

1.2: Melden Sie sich bei der MariaDB-Bibliothek an, um
zu erstellen

MariaDB [(none)]> create database testdb2;
Query OK, 1 row affected (0.00 sec)
 
MariaDB [(none)]> show databases;
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb1      |
| testdb2      |<---创建好的库
+--------------------+

(2) MariaDB Datenbank löschen

2.1: Verwenden Sie mysqladmin, um die Datenbank zu löschen

[root@test01 10.19.166.166 ~ ] 
# mysqladmin -u root -p drop testdb1
Enter password: //输入数据库密码
 
//执行完上面的删除命令后,会出现一个提示框,提示是否确认删除此数据库
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
 
Do you really want to drop the 'testdb1' database [y/N] y  //删除
Database "testdb1" dropped

Melden Sie sich an, um
anzuzeigen

MariaDB [(none)]> show databases; //确认testdb1已被删除 
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
| testdb2      |
+--------------------+

2.2: Melden Sie sich bei der MariaDB-Bibliothek an, um
zu löschen

MariaDB [(none)]> drop database testdb2;
Query OK, 0 rows affected (0.00 sec)
 
MariaDB [(none)]> show databases; //确认testdb2已被删除
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
+--------------------+

(3) MariaDB wählt die Datenbank aus und zeigt alle Tabellen unter der ausgewählten Datenbank an

MariaDB [(none)]> show databases; //查看所有库
+--------------------+
| Database      |
+--------------------+
| hellodb      |
| information_schema |
| mydb        |
| mysql       |
| performance_schema |
| test        |
| testdb       |
+--------------------+
7 rows in set (0.00 sec)
 
MariaDB [(none)]> use mydb //选择mydb数据库 
Database changed  
MariaDB [mydb]> show tables;  //查看mydb数据库下面所有表信息
+----------------+
| Tables_in_mydb |
+----------------+
| ssc      |
| t1       |
| tb2      |
| tb4      |
| tb5      |
+----------------+
5 rows in set (0.00 sec)

(4) MariaDB-Datentyp
Die in MariaDB definierten Datenfeldtypen sind für die Datenbankoptimierung sehr wichtig
MariaDB unterstützt mehrere Typen, die grob in drei Kategorien unterteilt werden können: numerische Werte, Datum/Uhrzeit und Zeichenfolgen (Zeichentypen)

4.1 Numerischer Typ

Typ Größe Bereich (vorzeichenbehaftet) Bereich (ohne Vorzeichen) Zweck TINYINT 1 Byte (-128.127) (0,255) Kleiner ganzzahliger Wert SMALLINT 2 Bytes (-32 768.32767) (0,65 535) Großer ganzzahliger Wert MITTELINT 3 Bytes (-8 388 608, 8 388 607) (0,16 777 215) Großer ganzzahliger Wert INT oder INTEGER 4 Bytes (-2 147 483 648, 2 147 483 647) (0, 4 294 967 295) Großer ganzzahliger Wert BIGINT 8 Bytes (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) Großartiger ganzzahliger Wert FLOAT 4 Bytes (-3.402 823 466 E 38, 1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E 38) 0, (1.175 494 351 E-38, 3.402 823 466 E 38) Einfache Genauigkeit

类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1字节 (-128,127) (0,255) 小整数值
SMALLINT 2字节 (-32 768,32767) (0,65 535) 大整数值
MEDIUMINT 3 字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4 字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4 字节 (-3.402 823 466 E 38,1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E 38) 0,(1.175 494 351 E-38,3.402 823 466 E 38) 单精度
浮点数值
DOUBLE 8 字节 (1.797 693 134 862 315 7 E 308,2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) 双精度
浮点数值
DECIMAL 对DECIMAL(M,D) ,如果M>D,为M 2否则为D 2 依赖于M和D的值 依赖于M和D的值 小数值
Gleitkommawert DOPPELT 8 Bytes (1.797 693 134 862 315 7 E 308, 2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 30 8) 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E 308) Doppelt Gleitkommawert DEZIMAL Für DECIMAL(M,D): wenn M>D, ist es M 2, andernfalls ist es D 2 Hängt von den Werten von M und D ab Hängt von den Werten von M und D ab Dezimalwert

4.2 Datums- und Uhrzeittypen

Die Datums- und Zeittypen, die Zeitwerte darstellen, sind DATETIME, DATE, TIMESTAMP, TIME und YEAR.
Jeder Zeittyp verfügt über einen Bereich gültiger Werte und einen „Null“-Wert, der verwendet wird, wenn ein unzulässiger Wert angegeben wird, den MySQL nicht darstellen kann.
Der Typ TIMESTAMP verfügt über proprietäre automatische Aktualisierungsfunktionen, die später beschrieben werden.

类型 大小(字节) 范围 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 8 1970-01-01 00:00:00/2037 年某时 YYYYMMDD HHMMSS 混合日期和时间值,时间戳

 4.3 String-Typ

String-Typen beziehen sich auf CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM und SET. In diesem Abschnitt wird beschrieben, wie diese Typen funktionieren und wie sie in Abfragen verwendet werden.

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-255字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LOGNGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

CHAR- und VARCHAR-Typen sind ähnlich, werden jedoch unterschiedlich gespeichert und abgerufen. Sie unterscheiden sich auch hinsichtlich ihrer maximalen Länge und ob nachgestellte Leerzeichen erhalten bleiben. Während der Speicherung oder des Abrufs wird keine Fallkonvertierung durchgeführt.

Die Klassen BINARY und VARBINARY ähneln CHAR und VARCHAR, außer dass sie binäre Zeichenfolgen anstelle von nicht-binären Zeichenfolgen enthalten. Das heißt, sie enthalten Byte-Strings und keine Zeichenfolgen. Dies bedeutet, dass sie keinen Zeichensatz haben und Sortierung und Vergleich auf dem numerischen Wert der Spaltenwertbytes basieren.
BLOB ist ein binäres großes Objekt, das eine variable Datenmenge speichern kann. Es gibt 4 BLOB-Typen: TINYBLOB, BLOB, MEDIUMBLOB und LONGBLOB. Sie unterscheiden sich lediglich in der maximalen Länge, in der sie einen Wert aufnehmen können.

Es gibt 4 TEXT-Typen: TINYTEXT, TEXT, MEDIUMTEXT und LONGTEXT. Diese entsprechen 4 BLOB-Typen mit der gleichen maximalen Länge und den gleichen Speicheranforderungen.

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