学习目标
- 掌握MySQL服务中表的操作方法,能够完成表的创建,查看,重命名和删除。
在操作数据表之前,我们先要确定我们要在哪个数据库中进行数据表的操作,并使用该数据库。
学习数据表的使用之前,我们需要先进行如下操作:
# 创建数据库(该数据库存在不报错),指定字符集为utf8
CREATE DATABASE IF NOT EXISTS bigdata_db CHARACTER SET utf8;
# 使用数据库
USE bigdata_db;
# 注意:如果不切换到要操作的数据库中,之后对于表的操作会报错
我们创建表使用CREATE TABLE关键字,和创建数据库类似,但要指定字段信息:
CREATE TABLE 表名(
字段名1 数据类型(长度) 约束,
字段名2 数据类型(长度) 约束
...
);
字段名:数据表中每一列的名称(列头) 数据类型:数据的存储形式(结构) 约束:数据存储遵循的规则
例如:
CREATE TABLE category(
# 字段1名称为cid,数据类型为整型,添加主键约束及非空约束
cid INT PRIMARY KEY NOT NULL,
# 字段2名称为cname,数据类型为varchar,最大长度为100
cname VARCHAR(100)
);
注意:
- 每个表必须最少有一列数据
- 每个字段必须有数据类型,但可以没有约束
- 创建表时为了避免重复创建而报错,也可以在表名之前添加IF NOT EXISTS。
我们刚才已经创建了一张表,此时我们就可以使用sql语句查看当前所在库中都有哪些数据表。
SHOW TABLES;
运行效果如下:
同时,我们也可以查看某一张表中所有的字段信息,或者说==查看表结构==。
DESC 表名;
例如:
DESC category;
注意:要查询的表名必须存在,否则会报错,错误信息为:Table 'bigdata_db.category' doesn't exist。
3.修改表名如果我们想修改表的名称,可以使用RENAME TABLE进行表的重命名。
RENAME TABLE 表名 TO 新表名;
例如:
# 将category表重命名为categories
RENAME TABLE category TO categories;
# 查看数据库中所有的表,验证表名是否修改成功
SHOW TABLES;
运行结束后,表名即修改完成。
注意:如果数据库列表中的表名没有及时修改,则需要在数据库名称上右键,点击refresh进行刷新。
4.表的删除如果需要删除表,我们使用如下语句:
DROP TABLE 表名;
列如:
# 删除categories表
DROP TABLE categories;
# 查看表是否被删除成功
SHOW TABLES;
此时,我们看到,categories表已经从数据库中被移除。
注意:表不存在则会报错,错误信息为:ERROR 1051 (42S02): Unknown table 'bigdata_db.category'。
5.小结- 创建表: CREATE TABLE 表名( 字段名1 数据类型(长度) 约束, 字段名2 数据类型(长度) 约束 ... );
- 查看表结构:DESC 表名;
- 修改表名:DROP TABLE 表名;
- 删除表: DROP TABLE 表名;