MySQL小白之路表的创建与操作

Posted 霖行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL小白之路表的创建与操作相关的知识,希望对你有一定的参考价值。

mysql小白之路】表的创建与操作

表的创建

关键字:CREATE TABLE

所需信息:1.表名 2.列名列的定义(类型,能否为空)

样例:

CREATE TABLE student (					#表名:student
	stu_id		int			NOT NULL,	#列名:stu_id		类型:int			能否为空:NOT
    stu_name	char(50)	NOT NULL,	#列名:stu_name		类型:char(50)		能否为空:NOT
    PRIMARY KEY (stu_id)				#主键:stu_id
) ENGINE = InnoDB;						#引擎:InnoDB

样例分析:

表名跟于CREATE TABLE关键字后
列名与列的定义位于括号内,逗号分隔。顺序:列名 数据类型 能否为空 其他选项(可选);
主键声明于PRIMARY KEY关键字后的括号内,至少一个。主键只能定义为NOT NULL;
引擎位于最后;

拓展:

​ IF NOT EXISTS关键字:表示仅在不存在该表时创建该表。位于表名后。
​ AUTO_INCREMENT关键字:每当增加一行时自动增量,每张表仅可设一个,且该列为主键。位于列定义中的其他选项。
​ SELECT last_insert_id() :last_insert_id函数返回最后一个AUTO_INCREMENT值
​ DEFAULT关键字:设置默认值,只支持常量。在插入行未给出值时,使用默认值。位于列定义中的其他选项。
​ 主键:用于区分表中的行与行,主键值相同的行是同一行。
​ 引擎类型:SHOW ENGINES 查看支持的引擎
​ 常用:
​ InnoDB(默认):优秀的事务处理引擎;
​ MyISAM:高性能引擎,但不支持事务;
​ MEMORY:功能同MyISAM,但数据存于内存,速度快,适合临时表;

表的操作

表的更新

关键字:ALTER TABLE

所需信息:1.已存在的表名 2.所做更改的列

样例:

#列的添加与删除
ALTER TABLE student			#选定更新的表:student
ADD stu_email char(50),		#添加名为:stu_email的列,数据类型为:char(50)
DROP COLUMN stu_email;		#删除名为:stu_email的列

#定义外键
ALTER TABLE student					#选定更新的表:student
ADD CONSTRAINT fk_student_course 	#添加名为:fk_student_course的外键
FOREIGN KEY (stu_id) 				#以stu_id列为标准
REFERENCES course (stu_id);			#链接到course表的stu_id列

表的删除

关键字:DROP TABLE

所需信息:1.表名

样例:

DROP TABLE student;

注意:该操作不可撤回!!!

表的重命名

关键字:RENAME TABLE … TO …

所需信息:1.表名 2.重新名

样例:

RENAME TABLE student TO students;

提示:可对多个表重命名,以逗号分隔。

以上是关于MySQL小白之路表的创建与操作的主要内容,如果未能解决你的问题,请参考以下文章

MySQL小白之路数据的更新与删除

MySQL小白之路数据的插入

mysql学习之路_高级数据操作

「mysql优化专题」优化之路高级进阶——表的设计及优化

MySQL高级篇如何创建数据库?一文带你吃透数据库和表的操作之DDL

小白学习MySQL - 变通创建索引的案例一则