MySQL中DDL语句详解(mysql中ddl语句是)

MySQL中DDL语句详解

MySQL是一款流行的关系型数据库管理系统。在MySQL中,数据定义语言(DDL)用于定义数据库、表和其他对象。DDL语句包括CREATE、ALTER和DROP语句。在本文中,我们将详细介绍MySQL中DDL语句的用法及示例。

1. CREATE语句

CREATE语句用于创建数据库和表。下面是一个创建表的示例:

CREATE TABLE `employee` (
`id` int NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`address` varchar(255) DEFAULT NULL,
`phone` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

以上代码创建了一个名为“employee”的表。表包括以下列:id(整数类型,自动递增)、name(字符型,不允许为空)、address(字符型,默认为空)和phone(字符型,默认为空)。还通过PRIMARY KEY约束为主键。

2. ALTER语句

ALTER语句用于修改数据库、表和表中的列。以下是一个修改表的示例:

ALTER TABLE `employee` ADD COLUMN `eml` varchar(255) DEFAULT NULL;

以上代码在“employee”表中添加了一个名为“eml”的列。该列为字符型,其默认值为NULL。

3. DROP语句

DROP语句用于删除数据库、表和表中的列。以下是一个删除表的示例:

DROP TABLE `employee`;

以上代码将删除名为“employee”的表。

4. 示例

下面是一个完整的MySQL脚本示例,它定义一个名为“student”的数据库,并在其中创建一个名为“score”的表:

CREATE DATABASE `student` CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
USE `student`;

CREATE TABLE `score` (
`id` int NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`math_score` int DEFAULT NULL,
`english_score` int DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

ALTER TABLE `score` ADD COLUMN `science_score` int DEFAULT NULL;

DROP TABLE `score`;

以上代码创建了一个名为“student”的数据库,并在其中创建了一个名为“score”的表。表包括以下列:id(整数类型,自动递增)、name(字符型,不允许为空)、math_score(整数型,默认为空)、english_score(整数型,默认为空)和science_score(整数型,默认为空)。还通过PRIMARY KEY约束为主键。

然后,通过ALTER语句添加了一个名为“science_score”的列。使用DROP语句删除了“score”表。

总结

DDL语句是MySQL中定义数据库、表和其他对象的基本工具。CREATE语句用于创建数据库和表,ALTER语句用于修改数据库、表和表中的列,而DROP语句用于删除数据库、表和表中的列。在使用这些语句时,请仔细检查语法,并在测试环境中进行测试,以确保正确性和安全性。


数据运维技术 » MySQL中DDL语句详解(mysql中ddl语句是)