Heim > Datenbank > MySQL-Tutorial > Zusammenfassung der Grundoperationen der MySQL-Tabelle (3)_MySQL

Zusammenfassung der Grundoperationen der MySQL-Tabelle (3)_MySQL

WBOY
Freigeben: 2016-09-09 08:13:43
Original
1200 Leute haben es durchsucht

Grundlegende Operationen für MySQL-Tabellen, die Details sind wie folgt

1. Tabelle erstellen:
Syntax zum Erstellen einer Tabelle:

CREATE TABLE table_name(
 属性名 数据类型,
 属性名 数据类型,
 ...
 属性名 数据类型
)

Nach dem Login kopieren

Beispiel:

CREATE TABLE t_dept(
 deptno int,
 dname varchar(20),
 loc varchar(20)
Nach dem Login kopieren

Hinweis: Bevor Sie eine Tabelle erstellen, müssen Sie normalerweise den USE-Bibliotheksnamen verwenden. Eine solche Anweisung wählt eine Bibliothek aus und erstellt die Tabelle in der ausgewählten Bibliothek. Bei Tabellennamen-Bezeichnern dürfen es sich nicht um MySQL-Schlüsselwörter wie CREATE, USE usw. handeln. Es wird empfohlen, dass die Tabellennamen-Bezeichner t_xxx oder tab_xxx sind und jedes Attribut durch Kommas getrennt werden sollte. Nach dem letzten Attribut ist kein Komma erforderlich.

2. Tabellenstruktur anzeigen:
2.1 DESCRIBE-Anweisung zum Anzeigen der Definition der Tabelle
USE-Bibliotheksname; //Wählen Sie eine Bibliothek aus
DESCRIBE-Tabellenname; //Zeigen Sie die Definitionsinformationen der Tabelle an. DESCRIBE kann durch DESC
ersetzt werden 2.2 SHOW CREATE TABLE-Anweisung zum Anzeigen der detaillierten Definition der Tabelle
USE-Bibliotheksname; //Wählen Sie eine Bibliothek aus
SHOW CREATE TABLE Tabellenname G Tabellenname; // Tabellendefinitionsinformationen anzeigen
Anmerkungen: Wenn Sie die detaillierten Definitionsinformationen der Tabelle anzeigen, können Sie zum Beenden die Symbole „;“ „g“ und „G“ verwenden. Um die Anzeige der Ergebnisse schöner zu gestalten und die Anzeige für den Benutzer zu erleichtern, verwenden Sie am besten G zu Ende.

3. Tabelle löschen:
Die Syntaxform zum Löschen einer Tabelle:
USE-Bibliotheksname; //Wählen Sie eine Bibliothek aus
DROP TABLE Tabellenname; //Löschen Sie die Tabelle mit dem angegebenen Tabellennamen

4. Tabelle ändern:
4.1 Tabellennamen ändern
Für erstellte Tabellen sind nach längerer Verwendung einige strukturelle Änderungen erforderlich, d. h. Tabellenänderungsvorgänge. Warum löschen Sie die Tabelle nicht direkt und erstellen die Tabelle entsprechend der neuen Tabellendefinition? Der Grund dafür ist, dass, wenn bereits eine große Datenmenge in der Tabelle vorhanden ist, nach der Rekonstruktion viel zusätzlicher Aufwand erforderlich ist, beispielsweise das erneute Laden der Daten. Um die oben genannten Probleme zu lösen, stellt MySQL die ALTER TABLE-Anweisung zum Ändern der Tabellenstruktur bereit.
Ändern Sie die Syntax des Tabellennamens: ALTER TABLE old_table_name REANME [TO] new_table_name
4.2 Felder hinzufügen
4.2.1 Fügen Sie ein Feld an der letzten Position der Tabelle hinzu
Die Syntax lautet: ALTER TABLE Tabellenname ADD Attributname Attributtyp
4.2.2 Fügen Sie ein Feld an der ersten Position der Tabelle hinzu
Die Syntax lautet: ALTER TABLE Tabellenname ADD Attributname Attributtyp FIRST; 4.2.3 Fügen Sie Felder nach den angegebenen Feldern in der Tabelle
hinzu Die Syntax lautet: ALTER TABLE Tabellenname ADD Attributname Attributtyp AFTER Attributname

4.3 Felder löschen
Syntax zum Löschen von Feldern: ALTER TABLE Tabellenname DROP Attributname

4.4 Felder ändern (Änderung des Datentyps und der Reihenfolge muss ÄNDERN sein, Änderung des Namens oder Namens und Attribute müssen ÄNDERN sein)
4.4.1 Ändern Sie den Datentyp des Feldes
Die Syntax lautet: ALTER TABLE Tabellenname MODIFY Attributname Datentyp; //Der Datentyp ist der geänderte Datentyp
4.4.2 Feldnamen ändern
Die Syntax lautet: ALTER TABLE Tabellenname CHANGE alter Attributname neuer Attributname alter Datentyp
4.4.3 Ändern Sie gleichzeitig den Namen und die Attribute des Feldes
Die Syntax lautet: ALTER TABLE Tabellenname CHANGE alter Attributname neuer Attributname neuer Datentyp; 4.4.4 Ändern Sie die Reihenfolge der Felder
Die Syntax lautet: ALTER TABLE Tabellenname MODIFY Attributname 1 Datentyp FIRTST | AFTER Attributname 2; //Der Parameter „Attributname 1“ gibt den Feldnamen an, der der Reihe nach angepasst werden soll, der Parameter „FITST“ gibt die Anpassung des Felds an die erste Position in der Tabelle an, „AFTER Attributname 2“ gibt die Anpassung des Felds an die Position nach dem Attribut an Name 2 Feld.

5.操作表的约束:
5.1 MySQL支持的完整性约束
所谓完整性是指数据的准确性和一致性,而完整性检查是指检查数据的准确性和一致性。MySQL提供了一种机制来检查数据库表中的数据是否满足规定的条件,以保证数据库中数据的准确性和一致性,这种机制就是约束。MySQL除了支持标准SQL的完整性约束外,还扩展增加了AUTO_INCREMENT约束。
1. NOT NULL //约束字段的值不能为空
2. DEFAULT //设置字段的默认值
3. UNIQUE KEY(UK) //约束字段的值是唯一
4. PRIMARY KEY(PK) //约束字段为表的主键,可以作为该表记录的唯一标识
5. AUTO_INCREMENT //约束字段的值为自动增长
5.2 设置非空约束(NOT NULL, NK)
在创建数据库表时,为某些字段加上”NOT NULL”约束条件,保证所有记录中的该字段都是有值的。 设置非空约束的语法形式为:

 CREATE TABLE table_name ( 
  属性名 数据类型 NOT NULL, 
 ); 
Nach dem Login kopieren

5.3 设置字段的默认值(DEFAULT)
当为数据库表中插入一条新记录时,如果没有为某个字段赋值,那么数据库系统会自动为这个字段插入默认值。设置数据库表中某个字段的默认值语法形式为:

 CREATE TABLE table_name ( 
  属性名 数据类型 DEFAULT 默认值, 
 );
Nach dem Login kopieren

5.4 设置唯一约束(UNIQUE, UK)
当数据库表中的某个字段上的内容不允许重复时,则可以使用UK约束进行设置。即UK约束在创建数据库表时为某些字段加上”UNIQUE”约束条件,保证所有记录中该字段上的值不重复。
设置唯一约束语法形式为:

CREATE TABLE table_name(
 属性名 数据类型 UNIQUE,
);
Nach dem Login kopieren

例如:

CREATE TABLE t_dept(
 deptno INT ,
 dname VARCHAR(20) UNIQUE,
 loc VARCHAR(40) 
);
Nach dem Login kopieren

如果想给字段dname上的UK约束设置一个名字,可以执行SQL语句CONSTRAINT,示例如下:

CREATE TABLE t_dept(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT uk_dname UNIQUE(dname)
);
//在为约束设标识符时,推荐使用“约束缩写_字段名",因此设置为uk_dname;

Nach dem Login kopieren

5.5 设置主键约束(PRIMARY KEY , PK)
当想用数据库表中的某个字段来唯一标识所有记录时,则可以使用PK约束进行设置。在数据库表中之所以设置主键,是为了便于快速的查找到表中的记录。在具体设置主键约束时,必须要满足主键字段的值是唯一、非空的。主键可以使单一字段,也可以是多个字段,因此分为单字段主键和多字段主键。主键约束相当于 非空约束 加上 唯一约束。
5.5.1 单字段主键
设置PK约束,语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 PRIMARY KEY,
);

Nach dem Login kopieren

如果想给字段deptno上的PK约束设置一个名字,可以使用CONSTRAINT,示例如下:

CREATE TABLE table_name(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT pk_deptno PRIMARY KEY(deptno)
);
Nach dem Login kopieren

5.5.2 多字段主键
当主键有多个字段组合而成时,则需要通过SQL语句CONSTRAINT来实现,其语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 ......
 [CONSTRAINT 约束名]PRIMARY KEY (属性名,属性名......)
);

Nach dem Login kopieren

5.6 设置字段值自动增加(AUTO_INCREMENT)
AUTO_INCREMENT 是MySQL唯一扩展的唯一性约束,当为数据库表中插入新记录时,字段上的值会生成唯一的ID,在数据库表中只能有一个字段使用该约束,该字段的数据类型必须是整数类型,由于设置自增长字段会生成唯一的ID,所以该字段也经常设置成PK主键。
设置自增长语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 AUTO_INCREMENT, //默认字段的值是从1开始增加,每增加一条在前一条的基础上加1
 deptno INT PRIMARY KEY AUTO_INCREMENT, //通常都会和PK一起写
);

Nach dem Login kopieren

5.7 设置外键约束(FOREIGN KEY ,FK)
前面的完整性约束都是在单表中进行设置,而外键约束通常保证两个表之间的参照完整性,即构建于两个表的两个字段之间的参照关系。在具体设置FK约束时,设置FK约束的字段必须依赖于数据库中已经存在的”一”(一对多中的一)的一方的主键,同时外键可以设置为null。
设置FK约束的语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 属性名 数据类型,
 [CONSTRAINT 外键约束名] FOREIGN KEY (属性名1) REFERENCES 表名 (属性名2)
//备注:"外键约束名"用来标识约束名,"属性名1"参数是"多"的一方表中设置外键的字段名,"属性2"中,参数是"一"的一方设置主键约束的字段名。
)
Nach dem Login kopieren

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage