1.创建表
语法:create table [模式名.]表名
(
#可以定义多个列表
columnNamel datatype [default expr],
...
)
eg:
<span style="white-space:pre"> </span>create table test
(
#整型常用int
test_id int,
#小数点数
test_price decimal,
#普通长度文本,使用default指认默认值
test_name varchar(255) default 'xxx',
#大文本类型
test_desc text,
#图片
test_img blob,
test_date datetime
);
建表时插入数据:
create table [模式名.]表名[colum[,colum...]]
as subquery;
使用子查询来建表
<span style="white-space:pre"> </span>#创建hele数据表,该数据表和user_inf完全相同,数据也完全相同
create table hele
as
select* from user_inf;
2.修改表结构
包括增加列定义、修改列定义、删除列、重命名列等
新增语法:
<span style="white-space:pre"> </span>alert table 表名
add
(
#可以有多个列定义
column_namel datatype [default expr],
)
eg:
<span style="white-space:pre"> </span>#为hele数据表增加aaa/bbb字段
slert table hele
add
(
aaa varchar(255) default 'xxx',
bbb varchar(255)
);
修改列定义
<span style="white-space:pre"> </span>alert table 表名
modify column_name datatype [default expr] [first |after col_name];
示例:
#将hehe表的hehe_id列修改成varchar(255)类型
alert table hehe
modify hehe_id varchar(255);
#将hehe表的hehe_id列修改成varchar(255)类型
alert table hehe
modify bbb int;
删除列
alert table 表名
drop colum_name
3.删除表
drop table 表名;
效果:
表结构被删除,表对象不存在;
表所有数据被删除;
该表所有相关索引、约束被删除。
4.truncate表
truncate 表名
删除表中全部数据,保留表结构。truncate比delete效率高