返回

DDL语言的学习 - 表的管理

后端

创建表

创建表是DDL语言中最基本的操作之一。我们可以使用CREATE TABLE命令来创建表。CREATE TABLE命令的语法如下:

CREATE TABLE table_name (
  column_name1 data_type1 [NOT NULL] [DEFAULT default_value1],
  column_name2 data_type2 [NOT NULL] [DEFAULT default_value2],
  ...
  PRIMARY KEY (column_name1, column_name2, ...)
);

其中,table_name是表的名称,column_name1、column_name2等是表的列的名称,data_type1、data_type2等是表的列的数据类型,NOT NULL表示该列不允许为空,DEFAULT default_value1、DEFAULT default_value2等是表的列的默认值,PRIMARY KEY (column_name1, column_name2, ...)表示表的联合主键。

例如,我们可以使用以下命令来创建一个名为students的表:

CREATE TABLE students (
  id INT NOT NULL AUTO_INCREMENT,
  name VARCHAR(255) NOT NULL,
  age INT NOT NULL,
  PRIMARY KEY (id)
);

这个命令将创建一个名为students的表,该表有三个列:idnameageid列是表的联合主键,它是一个自增整数列,这意味着每次插入一条新数据时,id列的值都会自动增加。name列是一个长度为255个字符的字符串列,它不能为空。age列是一个整数列,它不能为空。

修改表

我们可以使用ALTER TABLE命令来修改表。ALTER TABLE命令的语法如下:

ALTER TABLE table_name
  ADD column_name data_type [NOT NULL] [DEFAULT default_value],
  DROP COLUMN column_name,
  MODIFY COLUMN column_name data_type [NOT NULL] [DEFAULT default_value],
  RENAME COLUMN column_name TO new_column_name,
  ADD PRIMARY KEY (column_name1, column_name2, ...),
  DROP PRIMARY KEY,
  ADD FOREIGN KEY (column_name) REFERENCES table_name (column_name),
  DROP FOREIGN KEY column_name,
  ADD INDEX (column_name),
  DROP INDEX index_name;

其中,table_name是表的名称,column_name是表的列的名称,data_type是表的列的数据类型,NOT NULL表示该列不允许为空,DEFAULT default_value是表的列的默认值,PRIMARY KEY (column_name1, column_name2, ...)表示表的联合主键,FOREIGN KEY (column_name) REFERENCES table_name (column_name)表示表的外部键,INDEX (column_name)表示表的索引。

例如,我们可以使用以下命令来给students表添加一个新的列gender

ALTER TABLE students
  ADD COLUMN gender VARCHAR(255);

这个命令将在students表中添加一个名为gender的列,该列是一个长度为255个字符的字符串列。

删除表

我们可以使用DROP TABLE命令来删除表。DROP TABLE命令的语法如下:

DROP TABLE table_name;

其中,table_name是表的名称。

例如,我们可以使用以下命令来删除students表:

DROP TABLE students;

这个命令将删除名为students的表。

添加字段

我们可以使用ALTER TABLE命令来添加字段。ALTER TABLE命令的语法如下:

ALTER TABLE table_name
  ADD COLUMN column_name data_type [NOT NULL] [DEFAULT default_value];

其中,table_name是表的名称,column_name是表的列的名称,data_type是表的列的数据类型,NOT NULL表示该列不允许为空,DEFAULT default_value是表的列的默认值。

例如,我们可以使用以下命令来给students表添加一个新的列gender

ALTER TABLE students
  ADD COLUMN gender VARCHAR(255);

这个命令将在students表中添加一个名为gender的列,该列是一个长度为255个字符的字符串列。

删除字段

我们可以使用ALTER TABLE命令来删除字段。ALTER TABLE命令的语法如下:

ALTER TABLE table_name
  DROP COLUMN column_name;

其中,table_name是表的名称,column_name是表的列的名称。

例如,我们可以使用以下命令来删除students表中的gender列:

ALTER TABLE students
  DROP COLUMN gender;

这个命令将从students表中删除名为gender的列。

修改字段

我们可以使用ALTER TABLE命令来修改字段。ALTER TABLE命令的语法如下:

ALTER TABLE table_name
  MODIFY COLUMN column_name data_type [NOT NULL] [DEFAULT default_value];

其中,table_name是表的名称,column_name是表的列的名称,data_type是表的列的数据类型,NOT NULL表示该列不允许为空,DEFAULT default_value是表的列的默认值。

例如,我们可以使用以下命令来修改students表中的age列的数据类型:

ALTER TABLE students
  MODIFY COLUMN age INT NOT NULL;

这个命令将把students表中的age列的数据类型修改为整数,并将其设置为不允许为空。