📅  最后修改于: 2023-12-03 15:07:49.607000             🧑  作者: Mango
在 SQL 中,表是由行和列组成的二维结构,其中行代表每个记录,列代表每个属性。在描述表时需要定义表的结构和字段类型,并指定每个字段的约束和默认值等信息。
创建表的基本语法如下:
CREATE TABLE table_name (
column1 datatype constraints,
column2 datatype constraints,
column3 datatype constraints,
...
);
其中,table_name
表示表名;column1
, column2
, column3
等表示列名;datatype
表示数据类型;constraints
表示约束条件,如 NOT NULL
, UNIQUE
, PRIMARY KEY
等。
例如,创建一个名为 students
的表,包含 id
, name
, gender
, age
四个字段,其中 id
是主键,类型为整数,自动递增;name
类型为字符串,不允许为空;gender
类型为字符串,只允许填写 M
或 F
;age
类型为整数,可以为空,默认值为 18
。
CREATE TABLE students (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
gender CHAR(1) CHECK(gender IN ('M','F')),
age INT DEFAULT 18
);
可以使用 DESC
或 DESCRIBE
来描述表的结构,例如:
DESC students;
输出结果类似于:
+--------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+---------------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(50) | NO | | NULL | |
| gender | char(1) | YES | | NULL | |
| age | int(11) | YES | | 18 | |
+--------+---------------------+------+-----+---------+----------------+
其中,每一行代表一列的信息。包含 Field
(列名),Type
(数据类型),Null
(是否允许为空),Key
(约束条件),Default
(默认值),Extra
(额外信息,如自动递增)等字段。
可以使用 ALTER TABLE
来修改表的结构,例如:
ALTER TABLE students ADD COLUMN email VARCHAR(50);
ALTER TABLE students CHANGE COLUMN gender sex ENUM('M','F');
ALTER TABLE students DROP COLUMN age;
可以使用 DROP TABLE
来删除表,例如:
DROP TABLE students;
在 SQL 中,描述表包含创建表、描述表、修改表和删除表等过程,需要定义表的结构和字段类型,并指定每个字段的约束和默认值等信息。可以使用 CREATE TABLE
, DESC
(或 DESCRIBE
),ALTER TABLE
, DROP TABLE
等命令来完成这些操作。