MySql教程

MySQL_创建和管理表

本文主要是介绍MySQL_创建和管理表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

创建和管理表分以下几个步骤进行学习:

• 创建数据库

• 创建表

• 描述各种数据类型

• 修改表

• 删除,清空表和重命名

(1)创建数据库

● 创建一个保存老师信息的数据库
打开Navicat中的MySQL,并右键打开命令行界面,输入以下的sql语句。从下面的图已经显示创建成功,最后右键刷新数据库,能显示出teacher。

CREATE database teacher;

在这里插入图片描述
在这里插入图片描述
● 相关其他命令
查看当前所有数据库,下图显示有九个记录。

show databases;

在这里插入图片描述

“使用”一个数据库,使其作为当前数据库,这个一般要结合相应的DML语句一起使用。

use `teacher`;
命名规则
数据库名不得超过30个字符,变量名限制为29个
必须只能包含 A–Z, a–z, 0–9, _共63个字符
不能在对象名的字符间留空格
必须不能和用户定义的其他对象重名
必须保证你的字段没有和保留字、数据库系统或常用方法冲突
保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性。假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了

(2)创建表

CREATE TABLE 语句

• 必须具备:
– CREATE TABLE权限
– 存储空间

• 必须指定:
– 表名
– 列名, 数据类型, 尺寸

• 语法

CREATE TABLE demo
			(id INT(2),
			name VARCHAR(14));

在这里插入图片描述

• 确认

DESCRIBE demo;

在这里插入图片描述
新建表:

CREATE TABLE emp (
#int类型,自增
emp_id INT AUTO_INCREMENT,
#最多保存20个中英文字符
emp_name CHAR (20),
#总位数不超过15位
salary DOUBLE,
#日期类型
birthday DATE,
#主键
PRIMARY KEY (emp_id)
) ;

在这里插入图片描述
在这里插入图片描述

(3)描述各种数据类型

常用数据类型
类型说明
INT使用4个字节保存整数数据
CHAR(size)定长字符数据。若未指定,默认为1个字符,最大长度255
VARCHAR(size)可变长字符数据,根据字符串实际长度保存, 必须指定长度
FLOAT(M,D)单精度, M=整数位+小数位, D=小数位。 D<=M<=255,0<=D<=30,默认M+D<=6
DOUBLE(M,D)双精度。 D<=M<=255,0<=D<=30,默认M+D<=15
DATE日期型数据,格式’YYYY-MM-DD’
BLOB二进制形式的长文本数据,最大可达4G
TEXT长文本数据,最大可达4G

(4)修改表

ALTER TABLE 语句

使用 ALTER TABLE 语句可以实现:
● 向已有的表中添加列
● 修改现有表中的列
● 删除现有表中的列
● 重命名现有表中的列

追加一个新列

ALTER TABLE emp
ADD job_id VARCHAR(15);

在这里插入图片描述

在这里插入图片描述

修改一个列

• 可以修改列的数据类型, 尺寸和默认值

ALTER TABLE emp
MODIFY (job_id VARCHAR(30));

• 对默认值的修改只影响今后对表的修改

ALTER TABLE emp
MODIFY (salary double(9,2) default 1000);

删除一个列

使用 DROP COLUMN 子句删除不再需要的列

ALTER TABLE emp
DROP COLUMN birthday;

在这里插入图片描述
在这里插入图片描述

重命名一个列

使用 CHANGE old_column new_column dataType子句重命名列

ALTER TABLE emp
CHANGE emp_id id int(10);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(5)删除,清空表和重命名

删除表

• 数据和结构都被删除
• 所有正在运行的相关事务被提交
• 所有相关索引被删除
• DROP TABLE 语句不能回滚

DROP TABLE demo;

在这里插入图片描述

清空表

• TRUNCATE TABLE 语句:
– 删除表中所有的数据
– 释放表的存储空间

TRUNCATE TABLE demo1;

在这里插入图片描述

• TRUNCATE语句不能回滚
• 可以使用 DELETE 语句删除数据,可以回滚
• 对比:

DELETE FROM emp;
SELECT * FROM emp;
ROLLBACK;
SELECT * FROM emp;

重命名

• 执行RENAME语句改变表, 视图的名称
• 必须是对象的拥有者

ALTER table emp
RENAME TO seven;

在这里插入图片描述
在这里插入图片描述

这篇关于MySQL_创建和管理表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!