【MySQL】表操作
一、创建表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、示例
https://i-blog.csdnimg.cn/direct/97a0d4333e484632a7d7d07fa5ca364b.png
https://i-blog.csdnimg.cn/direct/09295ffddd9a4ab599ef902dd96f93c3.png
二、查看表结构
1、语句
DESCRIBE table_name;
[*]table_name是要查看的表的名称。
2、介绍
[*]在MySQL中,DESCRIBE下令(或其简写形式DESC)是一个非常实用的工具,用于获取有关数据库表的详细结构信息。该下令仅适用于表对象,不能用于视图、存储过程、函数等其他数据库对象。
3、返回的信息
信息说明字段名称(Field)表的每一列的名称数据类型(Type)每列中存储数据的类型,例如INT、VARCHAR、DATE等是否允许空值(Null)指示每列是否允许存储NULL值。键(Key)指示列是否为主键(PRI)、外键或索引的一部分。如果列是主键,则显示为PRI;如果是索引的一部分,则大概显示为MUL(表现该列在多个索引中出现)或其他干系标识默认值(Default)插入新行时,如果未指定列值,则利用默认值。如果列没有默认值,则此列大概为空附加信息(Extra)有关列的其他信息,例如是否允许自动增量(auto_increment)、是否具有唯一性束缚等 4、示例
https://i-blog.csdnimg.cn/direct/71c36234873449d5bcc6ab9af5534ea0.png
[*]添加数据
https://i-blog.csdnimg.cn/direct/c340c3a8fc814b658831e76abd134f2b.png
三、添加字段
1、语句
ALTER TABLE table_name
ADD COLUMN column_name column_definition ;
2、语句介绍
[*]table_name:要修改的表的名称。
[*]column_name:要添加的新字段的名称。
[*]column_definition:新字段的定义,包罗数据类型和其他束缚(如 NOT NULL、DEFAULT 值等)。
[*]FIRST:可选,表现将新字段添加到表的第一个位置。
[*]AFTER existing_column:可选,表现将新字段添加到existing_column之后。
3、示例
https://i-blog.csdnimg.cn/direct/ff2af03efe694eb69ac782476d109d13.png
四、修改
1、语句
-- 使用 MODIFY COLUMN 修改字段定义
ALTER TABLE table_name
MODIFY COLUMN column_name new_column_definition ;
-- 使用 CHANGE COLUMN 修改字段名称和定义
ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name new_column_definition ;
2、语句介绍
[*]MODIFY COLUMN 和 CHANGE COLUMN 子句都可以修改字段。
[*]MODIFY COLUMN 可以改变字段的定义,但不能改变字段的名称。
[*]CHANGE COLUMN 可以改变字段的名称和定义。
3、示例
https://i-blog.csdnimg.cn/direct/faf370b0b5bc4f9c82afcb0258d66bf4.png
https://i-blog.csdnimg.cn/direct/1dd31077b1b44711a96a244a61fcfb12.png
https://i-blog.csdnimg.cn/direct/71a179cc31874a1ab9f85df5b14444a0.png
五、删除
1、语句
ALTER TABLE table_name
DROP COLUMN column_name;
2、示例
https://i-blog.csdnimg.cn/direct/0f00dac6a05a4abc85bdaa1daa9a0b4d.png
六、修改表名
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、示例
https://i-blog.csdnimg.cn/direct/79bc51938c35405abaccee2c8208a647.png
七、删除表
1、语句
DROP TABLE table_name;
2、示例
https://i-blog.csdnimg.cn/direct/d048dda9f5904684b52739b65ea7862d.png
八、注意事项
[*]备份数据:在实行这些操作之前,最好备份这些数据,以防万一操作出错导致数据丢失。
[*]权限:确保实行这些操作的时间,实行者具有足够的权限来修改表结构。
[*]兼容性:不同版本的MySQL大概对某些语法有不同的支持,确保利用的语法与利用的MySQL版本兼容。
[*]依赖关系:查抄是否有其他数据库对象(如视图、触发器、存储过程等)依赖于要修改的表名或要删除的表。如果有,大概需要相应地更新或删除这些依赖对象。
[*]事件处理:如果操作是在事件中进行的,请确保已了解这些操尴尬刁难事件的影响。在某些情况下,RENAME TABLE 和 DROP TABLE 语句大概会隐式地提交当前事件。
本文到这里就结束了,如有错误或者不清楚的地方接待批评或者私信
本文只是在学习过程中所做的总结,不会涉及过深的概念
创作不易,如果以为博主写得不错,请点赞、收藏加关注支持一下
页:
[1]