一、database的创建、导入、修改
创建数据库 create database
create database
name;
查看数据库的定义 show
show create database
name;
查看所有数据库
show databases;
使用数据库 use
use
name;
修改数据库的定义(修改默认字符为gbk)alter
alter database
namedefault 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
namerename
new_name;
修改feature_name alter change
alter table
table_namechange
feture_namenew_name数据类型(不能空);
修改数据类型 alter modify
alter table
table_namemodify
feature1修改成哪种数据类型;
添加特征 alter add
alter table
table_nameadd
new_featuretypeafter
old_feature;
after可以换成first,即新增特征在第一行
删除特征 alter drop
alter table
table_namedrop
feature_name;
复制table
create
table2select * fromtable1;
调整feature的在表中的位置 alter modify
alter
table_namemodify
feature_nametypefirst;
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_namemodify
feature_nametypeprimary key;
设置多个主键
create table
table_name(
feature1type,
feature2type,
feature3type,primary key(
feature1,feature2));
设置非空 alter modify
alter table
table_namemodify
feature_nametypenot null;
设置自动增加 alter modify
alter table
table_namemodify
feature_nametypeauto_incerment;
建立外链alter table add constraint
alter table
本表名称add constraint
fk_nameforeign key(
本表哪个feature要设置外链)references
要参考的table(要连接的feature);
要连接的feature必须是那个表的主键
建立外链create table constriant
create table
table_name(……
constraint
fk_nameforeign key(本表哪个feature要设置外链)references
要参考的table(要连接的feature));
删除外链约束 alter drop
alter table
table_namedrop 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_nameontable(feature);
创建索引 alter table
alter table
table_nameadd indexindex_name(feature_name);
删除索引 drop
alter table
table_namedrop indexindex_name;
或
drop index
index_nameontable_name;
查看索引 show
show index from
table_name;
四、数据增删改
增加数据 insert into values
insert into
table_name(feature1,feature2, …)values (
value1,value2, …);
或
insert into
table_nameset
feature1=value1,feature2=value2, … ;
更新数据 update set
update
table_nameset
featrue1=value1,featrue2=value2,feature3=value3;
删除数据 delete from
delete from
table_name(where…);
清空table但不删除table truncate
truncate
table_name;