命令 | 作用 |
---|---|
create database 数据库名称; | 创建数据库 |
create database if not exists 数据库名称; | 判断此名字数据库不存在,再创建数据库 |
create database 数据库名称 character set 字符集名 | 创建数据库,并指定字符集 |
命令 | 作用 |
---|---|
show databases; | 查询所有数据库名称 |
show create database 数据库名称; | 查询数据库创建语句 |
命令 | 作用 |
---|---|
alter database 数据库名称 charater set 字符集名称; | 修改数据库的字符集 |
注意:先执行 修改语句,再执行,查看语句,发现已经数据库字符集已经被修改
命令 | 作用 |
---|---|
drop database 数据库名称; | 删除数据库 |
drop database if exists 数据库名称; | 判断数据库存在,再删除 |
命令 | 作用 |
---|---|
select database(); | 查询当前正在使用的数据库名称 |
use 数据库名称; | 使用数据库 |
数据类型 | 注意 | |
---|---|---|
int | 整数类型 | |
double | 小数类型 | float(5,2) |
date | 日期(年月日) | yyyy-MM-dd |
datetime | 日期(年月日时分秒) | yyyy-MM-dd HH:mm:ss |
varchar | 字符串 | |
timestamp | 时间戳类型(年月日时分秒) | 如果将来不给这个字段赋值或赋值为null,则默认使用当前系统时间,来自动赋值 |
MySQL5.6之后,时间戳要这样写,才能生效
格式:列名 数据类型 default current_timestamp
current_timestamp // 当向数据表执行 插入操作时,则无论这个字段有没有值都插入当前系统时间
on update current_timestamp // 在后续数据表中数据发生更新操作将自动更新执行时间
创建表格语法
CREATE TABLE 表名(
列名1 数据类型1,
列名2 数据类型2,
列名3 数据类型3,
...
列名n 数据类型n -- 注意:最后一行,不需要逗号
); -- 不要忘了 ;
代码示例
CREATE TABLE student(
sid INT, -- 学生编号
sname VARCHAR(20), -- 姓名
score FLOAT(5,2) -- 成绩,小数点保留2位
);
复制表格语法
CREATE TABLE 表名 LIKE 被复制的表名; -- 注意:只复制表结构,但是表中数据并不复制
代码示例
CREATE TABLE s LIKE student;
查询命令
命令 | 作用 |
---|---|
show tables; | 查询某个数据库中所有表的名称 |
desc 表名; | 查询表结构 |
代码示例
SHOW TABLES; -- 显示当前数据库所有的表格名称
DESC student; -- 显示 student 表的结构
修改命令
命令 | 作用 |
---|---|
alter table 旧的表名 rename to 新的表名; | 修改表名 |
alter table 表名 character set 字符集名称; | 修改表的字符集 |
alter table 表名 add 新列名 新数据类型; | 表中添加新的一列 |
alter table 表名 change 旧列名 新列名 新数据类型; | 修改列名和数据类型 |
alter table 表名 modify 旧列名 新数据类型; | 修改列的数据类型 |
alter table 表名 drop 列名; | 删除列 |
代码示例
ALTER TABLE s RENAME TO stu; -- 将表名 s 修改成 stu
ALTER TABLE stu CHARACTER SET gbk; -- 修改表的字符集为 gbk
ALTER TABLE stu ADD address VARCHAR(100); -- 添加新的一列 地址 字符数据类型
ALTER TABLE stu CHANGE address ads VARCHAR(80); -- 将address列名修改成ads,数据类型也修改
ALTER TABLE stu MODIFY sid VARCHAR(11); -- 更改 sid 列的数据类型
ALTER TABLE stu DROP ads; -- 删除 ads 列
大家可一步一步执行,去左侧表中查看下变化。
删除命令
命令 | 作用 |
---|---|
drop table 表名; | 删除表 |
drop table if exists 表名; | 判断表存在,再删除 |
示例代码
DROP TABLE stu; -- 删除 stu 表
DROP TABLE IF EXISTS stu; -- 判断 stu 表存在,再删除
可对比着删除数据库来学习!
大家接下来可阅读这篇文章:SQL语句详解三-DML(数据操作语言)