创建数据库
使用数据库

修改数据库
ALTER DATABASE 数据库名 CHARACTER SET 字符集; #比如:gbk、utf8等
删除数据库
修改表指的是修改数据库中已经存在的数据表结构
- 向已有的表中添加列
- 修改现有表中的列
- 删除现有表中的列
- 重命名现有表中的列
1.追加一个列
ALTER TABLE 表名 ADD [COULUMN] 字段名 字段类型 [FIRST|ALTER 字段名]
例:ALTER TABLE dept80 ADD job_id varchar(15)
2.修改一个列
ALTER TABLE 表名 MODIFY [COLUMN] 字段名1 字段类型 [DEFAULT 默认值][FIRST|ALTER 字段名2]
例:ALTER TABLE dept80 MODIFY last_name VARCHAR(30);
3.重命名一个列
ALTER TABLE 表名 CHANGE [COLUMN] 列名 新列名 新数据类型
例:ALTER TABLE dept80 CHANGE department_name dept_name varchar(15)
4.删除一个列
ALTER TABLE 表名 DROP [COLUMN] 字段名
例:ALTER TABLE dept80 DROP COLUMN job_id;
5.重命名表
方式一:RENAME TABLE emp TO myemp
方式二:ALTER TABLE dept RENAME [TO] detail_dept;— [TO]可以省略
6.删除表
- 在MYSQL中,当一张数据表没有与其他任何数据表形成关联关系时,可以将当前数据表直接删除。
- 数据和结构都被删除
- 所有正在运行的相关事务被提交
- 所有相关索引被删除
DROP TABLE [IF EXISTS] 数据表1 [,数据表2, ..., 数据表n];
DROP TABLE 语句不能回滚
7.清空表
TRUNCATE TABLE detail_dept;
阿里巴巴《Java开发手册》之MySQL字段命名
【 强制 】表必备三字段:id, gmtcreate, gmt_modified。
说明:其中 id 必为主键,类型为BIGINT UNSIGNED、单表时自增、步长为 1。gmt_create, gmt_modified 的类型均为 DATETIME 类型,前者现在时表示主动式创建,后者过去分词表示被动式更新
【 推荐 】表的命名最好是遵循 “业务名称表的作用”。
【 推荐 】库名与应用名称尽量一致。
练习
#1. 创建数据库test01_office,指明字符集为utf8。并在此数据库下执行下述操作#create database if not exists test01_office character set utf8#2. 创建表dept01/*字段 类型id INT(7)NAME VARCHAR(25)*/#create table dept01(id int(7),name varchar(25));#3. 将表departments中的数据插入新表dept02中#4. 创建表emp01/*字段 类型id INT(7)first_name VARCHAR (25)last_name VARCHAR(25)dept_id INT(7)*/#CREATE table emp01(id int(7), first_name varchar(25), last_name varchar(25), dept_id int(7))#5. 将列last_name的长度增加到50#alter table emp01 modify last_name varchar(50)#6. 根据表employees创建emp02#create table emp02 as select * from atguigudb.`employees`#show tables#7. 删除表emp01#drop table if EXISTS emp01#8. 将表emp02重命名为emp01#rename table emp02 to emp01#show tables#9.在表dept02和emp01中添加新列test_column,并检查所作的操作alter table emp01 add test_column varchar(10);#10.直接删除表emp01中的列 department_idalter table emp01 drop column department_id;

