一、创建表
1、语句
- CREATE TABLE 表名 (
- 列名1 数据类型 [约束条件],
- 列名2 数据类型 [约束条件],
- ...
- [表选项]
- );
复制代码 2、语句介绍
- CREATE TABLE:创建表的SQL下令。
- 表名:表的名称,必须是唯一的,并且符合MySQL的命名规则(通常只能包罗字母、数字和下划线,不能以数字开头)。
- 列名:表中的列(字段)名称,每个列都有一个相应的数据类型和可选的束缚条件。
- 数据类型:定义列中数据的类型,如INT(整数)、VARCHAR(可变长度字符串)、DATE(日期)等。
- 束缚条件:可选的,用于限定列中的数据,如NOT NULL(非空)、UNIQUE(唯一)、PRIMARY KEY(主键)、FOREIGN KEY(外键)、AUTO_INCREMENT(自动递增)等。
- 表选项:可选的,用于设置表的附加属性,如字符集、排序规则和存储引擎等。
3、注意事项
- 表名和列名尽量利用小写字母和下划线,以符合常见的命名规范。
- 在计划表结构时,应充分考虑数据的完备性和一致性,公道利用束缚条件。
- 根据详细需求选择合适的存储引擎,例如InnoDB(默认)和MyISAM。
4、介绍
- 在MySQL中,创建表(table)是数据库计划和数据组织的根本步调之一。表是存储结构化数据的重要方式,类似于Excel中的工作表或关系数据库中的关系。
- 默认情况下,利用InnoDB存储引擎在默认数据库中创建表。如果表存在、没有默认数据库或数据库不存在,则会发生错误。
- MySQL对表的数量没有限定。底层文件系统大概对表现表的文件数量有限定。单个存储引擎大概会施加特定于引擎的束缚。InnoDB最多允许40亿个表。
5、示例
二、查看表结构
1、语句
2、介绍
- 在MySQL中,DESCRIBE下令(或其简写形式DESC)是一个非常实用的工具,用于获取有关数据库表的详细结构信息。该下令仅适用于表对象,不能用于视图、存储过程、函数等其他数据库对象。
3、返回的信息
信息说明字段名称(Field)表的每一列的名称数据类型(Type)每列中存储数据的类型,例如INT、VARCHAR、DATE等是否允许空值(Null)指示每列是否允许存储NULL值。键(Key)指示列是否为主键(PRI)、外键或索引的一部分。如果列是主键,则显示为PRI;如果是索引的一部分,则大概显示为MUL(表现该列在多个索引中出现)或其他干系标识默认值(Default)插入新行时,如果未指定列值,则利用默认值。如果列没有默认值,则此列大概为空附加信息(Extra)有关列的其他信息,例如是否允许自动增量(auto_increment)、是否具有唯一性束缚等 4、示例
三、添加字段
1、语句
- ALTER TABLE table_name
- ADD COLUMN column_name column_definition [FIRST | AFTER existing_column];
复制代码 2、语句介绍
- table_name:要修改的表的名称。
- column_name:要添加的新字段的名称。
- column_definition:新字段的定义,包罗数据类型和其他束缚(如 NOT NULL、DEFAULT 值等)。
- FIRST:可选,表现将新字段添加到表的第一个位置。
- AFTER existing_column:可选,表现将新字段添加到existing_column之后。
3、示例
四、修改
1、语句
- -- 使用 MODIFY COLUMN 修改字段定义
- ALTER TABLE table_name
- MODIFY COLUMN column_name new_column_definition [FIRST | AFTER existing_column];
- -- 使用 CHANGE COLUMN 修改字段名称和定义
- ALTER TABLE table_name
- CHANGE COLUMN old_column_name new_column_name new_column_definition [FIRST | AFTER existing_column];
复制代码 2、语句介绍
- MODIFY COLUMN 和 CHANGE COLUMN 子句都可以修改字段。
- MODIFY COLUMN 可以改变字段的定义,但不能改变字段的名称。
- CHANGE COLUMN 可以改变字段的名称和定义。
3、示例
五、删除
1、语句
- ALTER TABLE table_name
- DROP COLUMN column_name;
复制代码 2、示例
六、修改表名
1、语句
- RENAME TABLE old_table_name TO new_table_name;
- ALTER TABLE old_table_name RENAME TO new_table_name;
复制代码 2、语句介绍
- old_table_name:要修改的表的当前名称。
- new_table_name:修改后的新名称。
- 上方两条语句都能达到修改表名的目标。在利用ALTER TABLE的语句中,TO可以省略。
3、示例
七、删除表
1、语句
2、示例
八、注意事项
- 备份数据:在实行这些操作之前,最好备份这些数据,以防万一操作出错导致数据丢失。
- 权限:确保实行这些操作的时间,实行者具有足够的权限来修改表结构。
- 兼容性:不同版本的MySQL大概对某些语法有不同的支持,确保利用的语法与利用的MySQL版本兼容。
- 依赖关系:查抄是否有其他数据库对象(如视图、触发器、存储过程等)依赖于要修改的表名或要删除的表。如果有,大概需要相应地更新或删除这些依赖对象。
- 事件处理:如果操作是在事件中进行的,请确保已了解这些操尴尬刁难事件的影响。在某些情况下,RENAME TABLE 和 DROP TABLE 语句大概会隐式地提交当前事件。
本文到这里就结束了,如有错误或者不清楚的地方接待批评或者私信
本文只是在学习过程中所做的总结,不会涉及过深的概念
创作不易,如果以为博主写得不错,请点赞、收藏加关注支持一下 |