7、表的创建
7.1、建表语法格式:(建表属于DDL语句,包括create drop alter)
create table 表名(字段名1 数据类型,字段名2 数据类型);
create table 表名(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型
);
表名:建议以 t_ 或者 tbl_ 开始,可读性强
表名和字段名都属于标识符
7.2、关于mysql的数据类型?
varchar (最长255):可变长度字符串,节省空间,会根据实际的数据长度动态分配空间,效率低
char(最长255):定长字符串,不管实际的数据长度是多少。分配固定长度的空间去存储数据,使用不恰当会导致空间浪费,效率高
varchar和char应该怎么选择?
性别字段选char,性别固定长度
姓名字段选varchar,可变
int(最长11):数字中的整数型。等同于java的int
bigint:长整型。等同于java中的long
float:单精度浮点型数据
double:双精度浮点型数据
date:短日期类型
datetime:长日期类型
clob(Character Large Object:CLOB):字符大对象,最多可以存储4G的字符串。比如一篇文章,一个简介等,超过255个字符的采用CLOB字符大对象存储
blob(Binary Large Object):二进制大对象,存储图片、声音、视频等流媒体数据
往BLOB类型的字段上插入数据的时候,例如插入一个图片、视频等要使用IO流
案例:t_movie 电影表(专门存储电影信息的)
编号 名字 描述信息 上映日期 时长 海报 类型
no(bigint) name(varchar) description(clob) playtime(date) time(double) image(blob) type(char)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
10000 哪吒 .................... 2019-10-11 2.5 ...... '1'
10001 大话西游 ..................... 2019-11-11 1.5 ..... '2'
7.3、创建一个学生表?
学号、姓名、年龄、邮箱地址
create table t_student(
no int,
name varchar(32),
age int(3),
email varchar(255)
);
删除表:
drop table t_student;//当这张表不存在的时候会报错!
drop table if exists t_student ; //如果这张表存在的话,删除,建议这样删除,健壮