一、database的创建、导入、修改
创建数据库 create database
create database
name
;
查看数据库的定义 show
show create database
name
;
查看所有数据库
show databases;
使用数据库 use
use
name
;
修改数据库的定义(修改默认字符为gbk)alter
alter database
name
default charset gbk;
删除数据库 drop
drop database
name
;
导入数据库 source
drop database if exists
name
;create database
name
;use
name
;source ~/path/to/
name
.sql; # 导入数据库
二、table的创建和修改结构
枚举类型–emum( option1
, option2
)
create table
table_name
(
特征名称
数据类型
属性
,id int auto_increment primary key,
name varchar(100),
gender enum(‘male’, ‘female’) not null
);
auto_increment
自动增加
enum()
只能写括号内的选项
集合类型–set(option1
, option2
, ···)
可以从括号里选0个、1个或多个选项
创建表 create table
create table
table_name
(
feature1
数据类型(最小宽度)
约束条件
,…… );
查看table的数据定义 show
show create table
table_name
;
查看table的结构(有几行几列,分别有什么限制)desc
desc
table_name
;
修改table名 alter rename
alter table
name
rename
new_name
;
修改feature_name alter change
alter table
table_name
change
feture_name
new_name
数据类型(不能空)
;
修改数据类型 alter modify
alter table
table_name
modify
feature1
修改成哪种数据类型
;
添加特征 alter add
alter table
table_name
add
new_feature
type
after
old_feature
;
after可以换成first,即新增特征在第一行
删除特征 alter drop
alter table
table_name
drop
feature_name
;
复制table
create
table2
select * fromtable1
;
调整feature的在表中的位置 alter modify
alter
table_name
modify
feature_name
type
first;
first 可换成 after feature_name
删除table drop
drop table
table_name
;
三、设置table约束、添加索引
CREATE TABLE Product (Product_ID CHAR(10) COMMENT ‘商品编号’);
comment
注释
常见约束:
- 非空
not null
- 唯一
unique
- 主键
primary key
- 默认值
default
- 外链(参考)
references
设置单一主键 alter modify
alter table
table_name
modify
feature_name
type
primary key;
设置多个主键
create table
table_name
(
feature1
type
,
feature2
type
,
feature3
type
,primary key(
feature1
,feature2
));
设置非空 alter modify
alter table
table_name
modify
feature_name
type
not null;
设置自动增加 alter modify
alter table
table_name
modify
feature_name
type
auto_incerment;
建立外链alter table add constraint
alter table
本表名称
add constraint
fk_name
foreign key(
本表哪个feature要设置外链
)references
要参考的table
(要连接的feature
);
要连接的feature
必须是那个表的主键
建立外链create table constriant
create table
table_name
(……
constraint
fk_name
foreign key(本表哪个feature要设置外链
)references
要参考的table
(要连接的feature
));
删除外链约束 alter drop
alter table
table_name
drop foreign key
fk_name
;
check约束
create table
table_name
(age int,
……
check(age>5 and age<20),
check(…)
);
索引
普通索引 index
唯一索引 unique index
全文索引 fulltext index
创建索引 create index
create index
index_name
ontable
(feature
);
创建索引 alter table
alter table
table_name
add indexindex_name
(feature_name
);
删除索引 drop
alter table
table_name
drop indexindex_name
;
或
drop index
index_name
ontable_name
;
查看索引 show
show index from
table_name
;
四、数据增删改
增加数据 insert into values
insert into
table_name
(feature1
,feature2
, …)values (
value1
,value2
, …);
或
insert into
table_name
set
feature1
=value1
,feature2
=value2
, … ;
更新数据 update set
update
table_name
set
featrue1
=value1
,featrue2
=value2
,feature3
=value3
;
删除数据 delete from
delete from
table_name
(where…);
清空table但不删除table truncate
truncate
table_name
;