对表的操作也有四种,分别是增删改查。首先介绍一个查表操作。
一,查表操作(Retrieve):查询
1, 查询某个数据库中所有的表名称:show tables;
2,查询表的结构:desc 表名;
这里以session表为例子:
可以看到session表中的结构,各种字段等。
二,创建表操作(create):创建
语法:
create table 表名(
列名1 数据类型1,
列名2 数据类型2,
…
列名n 数据类型n
);
注意:最后一列不需要加逗号。
数据库类型有很多种,这里介绍常用的几种:
- int:整数类型。 例
age int,
- double:小数类型。 例
score double(5,2),
表示小数长度为5,小数点后面保留2位。 - date:日期类型,只包含年月日的日期,格式:
yyyy-MM-dd
- datetime:日期类型,包含年月日时分秒,格式:
yyyy-MM-dd HH:mm:ss
- timestamp:时间戳类型,包含年月日时分秒,格式:
yyyy-MM-dd HH:mm:ss
。如果将来不给这个字段赋值,或者赋值为NULL,则默认使用系统时间来自动赋值。 - varchar:字符串类型。例
name varchar(20),
表示名字为字符类型,最大字符长度为20个字符。
例子:创建一个表:
create table student(
id int,
name varchar(32),
age int,
score double(4,1),
birthday date,
nsert_time timestamp
);
创建成功后如下图所示
我们查看一下这个表的结构:desc student;
复制表的语法:create table 表名 like 被复制的表名;
这里复制student表,新表名为stud1。
结果如下图所示,复制成功。
三,删除表操作(delete):删除
删除操作比较简单,这里只列举语法,不演示了。
1,drop table 表名;
删除表
2,drop table if exists 表名;
先判断表是否存在,再删除。
四,修改表(Update):修改
-
修改表名:
alter table 表名 rename to 新的表名;
,如下图所示,成功将student表改名为stu表。
-
修改表的字符集,要修改表的字符集,就要先查看原先的字符集是什么,这里以刚才的stu表为例子,
show create table stu;
可以看出原先的字符集为utf-8。
接下来修改表的字符集,alter table stu character set gbk;
可以看到字符集成功修改为gbk。
-
添加一列:
alter table 表名 add 列名 数据类型;
这里以stu为例子,添加gender列:
看看表的结构:
添加成功! -
修改列名称、类型,首先介绍列名和数据类型同时修改的方法:
alter table 表名 change 列名 新列名 新数据类型;
还是以gender列为例子:
如下图所示
修改成功,这里把字符类型的数据改成了整数类型。
单独修改数据类型:alter table 表名 modify 列名 新数据类型;
这里将上面的sex列整数类型改回字符类型:
可以看到上图成功修改列的数据类型。 -
删除列:
alter table 表名 drop 列名;
这里以上面的sex列为例子:
可以看到成功删除了列。