数据库3

数据类型

数据类型(列类型):对数据进行统一的分类,从系统的角度出发,为了能够使用统一的方式进行管理,更好地利用有限的空间

SQL中将数据类型分成三类

数值类型

字符串类型

时间日期类型

整数型:存放整型数据

tinyint:迷你整型,使用1个字节存储,表示的状态最多为256种

smallint:小整型,使用2个字节存储,表示的状态最多为65536种

mediumint:中整型,使用3个字节存储

int:标准整型,使用4个字节存储

bigint:大整型,使用8个字节存储

指定显示宽度为1

alter  table  表名  add  列名  tinyint(1)  unsigned;

显示宽度为2,0填充

alter  table  表名  add  列名  tinyint(2)  zerofill;

小数型

小数型:带有小数点或者范围超出整型的数值类型

浮点型:小数点浮动,精度有限,而且会丢失精度

定点型:小数点固定,精度固定,不会丢失精度

查看警告

show  warnings;

时间日期类型

datetime:时间日期,格式是YYYY-mm-ddHH:ii:ss,表示的范围是从1000到9999年,有0值(0000-00-00 00:00:00)

date:日期,就是datetime中的date部分

time:时间(段),指定的某个区间之间,比如-时间到+时间,或者过去的某个时间到将来的某个时间

timestamp:时间戳,但并不是时间戳,只是从1970年开始的,YYYY-mm-ddHH:ii:ss格式与datetime完全一致

year:年份,有两种形式:year(2)和year(4)

timestamp: 修改记录

update  表名  set  字段名  =  列名  where 字段名 = 列名

字符串类型

字符串类型分为:char、varchar、text、blob、enum、set

char(定长字符串):磁盘(二维表)在定义结构的时候,就已经确定了最终数据的存储长度

char(L):L代表Length,可以存储的长度,单位为字符,最大长度值可以为255

varchar(变长字符串):在分配空间的时候,按照最大的空间分配,但是实际上最终用了多少,是根据具体的数据来确定

varchar(L):L表示字符长度,理论长度是65536个字符,但是会多出1到2个字节,来确定存储的实际长度

文本字符串:如果数据量非常大,通常超过255个字符就会使用文本字符串

文本字符串根据存储的数据的格式分为:

text:存储文字、存储二进制数据的文件路径

blob:存储二进制数据(通常不用)

枚举字符串(enum):事先把所有可能出现的结果都设计好,实际上存储的数据必须是规定好的数据中的一个

节省空间  

枚举的使用方式:

enum(可能出现的元素列表);

例如:enum('男','女','不男不女','妖怪','保密');

使用:存储数据,只能存储上面定义好的数据

例:

create  table  student ( sex enum ('男' , '女' , '保密' ) ) ;

你可能感兴趣的:(数据库3)