数据类型
小数类型
小数类型有float和double,但是在数据库中因为不能存在二进制无法精确表示浮点数的局限性,因此就使用decimal这种类型
create table xiaoshu1(x1 float,x2 double,x3 decimal(23,14))
insert into xiaoshu1(x1,x2,x3) values(123456789.123456789123456789,123456789.123456789123456789,123456789.123456789123456789)
输出:
flaot:最多显示约7位
double:最多显示约17位
这里的约表示并不是精确的意思,表示不了的四舍五入,然后补0
时间类型
数据库里面有个时间类型 timestamp
,它可以缺省不填,这样每次修改数据都会获取当前时间,主要用于比如博客修改文章的时间
字符串类型
一般是使用 char
varchar
text
这三种类型,其他的不经常用
char
和 varchar
的区别:
char :定义 char(6)是定义字段长6个字符,不是6个字节(你怎么能直观知道一个字符串字节是多少呢?),但是他最多限制这个字符串最多65535个字节
varchar:定义varchar(6)也是定义字段长6个字符,也不是6个字节,但是他本身会限制这个字符串最多255个字符
如果你要存储比较长的文本,可以使用 text
text最多可以存储65535个字符,当然如果存不下,可以用mediumtext(1600万)和longtext(40亿
text必须要设置值,不能给默认值
此外,text不能设置长度!!!不要想当然地和char和varchar一样