MySQL数据库命令大全
1、查看数据库
show databases
2、删除数据库
drop database 数据库名
3、创建数据库
create database if not exists 数据库名 character set 字符集
4、查看指定数据库的结构信息
show create database 数据库名
5、MySQL中数据类型
整型:
tinyint 1字节
smallint 2字节
mediumint 3字节
int 4字节
bigint 8字节
小数类型:
精确小数类型:decimal(5,3)表示一共可以显示5位数字,小数位最多显示3位
浮点数类型:
float 单精度类型
double 双精度类型
字符串类型:
定长字符串类型:char(n):若实际存储的串长度不足n,则在串的尾部添加空格以达到长度n,所以char(n)的长度为n
变长字符串:varchar(n):n表示的是字符串可达到的最大长度,占用的字节数为实际长度加1
特殊类型:set和enum
说明:
在创建表时,使用字符串类型时应遵循以下原则:
(1)从速度方面考虑,要选择固定的列,可以使用char类型.
(2)要节省空间,使用动态的列,可以使用varchar类型。
(3)要将列中的内容限制在一种选择,可以使用enum类型.
(4)允许在一个列中有多于一个的条目,可以使用集类型。
空格问题:
Char和Varchar类型在插入数据时,若字符串末尾有空格
类型会自动去掉空格后保存,而VARCHAR、Text类型会保留空格
日期和时间类型:
data日期:YYYY-MM-DD
time时间:HH:MM:ss
datetime/timestamp时间+日期:YYYY-MM-DD HH:MM:ss
二进制类型:
text:长文本
blob:二进制数据(支持:文本、声音、图像等)
6、创建表
create table 表名(字段名 数据类型 约束)
7、创建外键约束
字段名 数据类型 foreign key references 表B(字段名) [on delete 级联选项][on update 级联选项]
级联选项的取值:
casecade:父表记录的删除或修改操作,会自动删除或修改子表中对应记录
set null:父表记录的删除或修改操作,会将子表中对应记录的外键值自动设置为null
no action:父表记录的删除或修改操作,如果子表存在与之对应的记录,那么删除或修改操作失败
restrict:与no action相同,且未级联选项的默认值
CREATE TABLEif not exists sc(sno char(9),,
cno char(4),
grade smallint,
PRIMARY KEY (sno, cno),
constraint F1 FOREIGN KEY(sno)REFERENCES student(sno) on update cascade on delete cascade,
constraint F2 FOREIGN KEY(cno)REFERENCES course(cno) on update cascade on delete cascade)
default charset utf8;
7、对数据的操作
1、插入数据:insert into 表名(字段名) values(值)
2、更新数据:update 表名 set 字段名=新值 where 条件
3、将原表的表结构复制到新表:create table 新表名 like 原表
4、将原表的表结构和表记录复制到新表:create table 新表名 select * from 原表
9、对表的操作
1、添加字段: alter table 表名 add 列名 数据类型
2、修改字段数据类型: alter table 表名 modify 列名 新数据类型
3、为字段设置默认值:alter table 表名 alter 列名 set default 默认值
4、删除字段的默认值约束:alter table 表名 alter 列名 drop default
5、修改字段名及数据类型:alter table 表名 change 原列名 新列名 新数据类型
6、删除字段:alter table 表名 drop 列名
7、为字段添加唯一约束:alter table 表名 add constraint 约束名 unique(字段名);
8、删除表的唯一约束: alter table 表名 drop index 唯一约束名;
9、删除表的主键约束: alter table 表名 drop primary key;(修改主键内容要先删除外键)
9、删除外键约束: alter table 表名 drop foreign key 外键约束名;(删除主键要先删除外键)
10、修改表的默认字符集:
alter table 表名 default charset=新的字符集;
或者 alter table 表名 default character set=新的字符集;
11、删除表:drop table 表名
12、删除数据库:drop database 数据库名