介绍
建表语句属于DDL语句,DDL包括:create、drop、alter
语法
create table tableName(
columnName dataType(length), //字段名1 数据类型1
......
columnName dataType(length) //字段名n 数据类型n
);
set character_set_results='gbk';
表名:建议以t_ 或者tbl_ 开始,可读性强。
示例
create table t_student(no int,name varchar(32),sex char(1),age int(3),email varchar(255));
结果:
mysql> desc t_student;
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| no | int | YES | | NULL | |
| name | varchar(32) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| age | int | YES | | NULL | |
| email | varchar(255) | YES | | NULL | |
+-------+--------------+------+-----+---------+-------+
5 rows in set (0.02 sec)
数据类型
varchar(最长255)
可变长度字符串,会根据实际的数据长度动态分配空间
char(最长255)
定长字符串,char(10)直接分配10个空间。
不管实际的数据长度是多少,分配固定长度的空间来存储数据,可能会导致空间浪费。
int(最长11)
数字中的整数型,等同于java的int。
bigint
数字中的长整型,等同于java中的long。
float
单精度浮点型数据
double
双精度浮点型数据
date
短日期
datatime
长日期
clob
字符大对象,最多可以存储4G字符串。
比如:存储一篇文章,超过255个字符的都要采用CLOB字符大对象来存储。
blob
二进制大对象,Binary Large Object.
专门用来存储图片,声音,视频等流媒体数据。
往BLOB类型的字段上插入数据时,需要使用IO流。
删除表
drop table if exists t_student;
如果表存在的话,删除
结果:
mysql> drop table if exists t_student;
Query OK, 0 rows affected (0.23 sec)
mysql> desc t_student;
1146 - Table 'mysql.t_student' doesn't exist