浮点类型
float(m,n) double(m,n)
m表示浮点数的总长度,n表示小数点后的长度
如果需要精确到小数点10位以上的,需要选择double类型
-->use company; create table t_test(a float,b double); insert into t_test values(123.456789012345,123.456789012345); select * from t_test;日期类型
date 表示年月日 datetime 表示年月日时分秒 timestamp 表示插入或者更新日期为当前系统时间的时候 time 表示时分秒 year 表示年 -->use company; create table d_test(f_date date,f_datetime datetime,f_timestamp timestamp,f_time time,f_year year); insert into d_test values(now(),now(),now(),now(),now()); select * from d_test;字符串类型:
char(m) 定义字符串 m为0~255之间的整数 char(100) varchar(3) 变长字符串 m为0~65535之间的整数 char(10) "abc" varchar(10) "abc" --> use company; create table t_char(a char(10),b varchar(10)); insert into t_char values('abc','abc'); select * from t_char;表的约束
not null 非空约束 约束该列不能为空
--> create table t1(a int not null,b int); insert into t1(a,b) values(3,5); select * from t1; insert into t1(b) values(20); drop table t1; create table t1(a varchar(10) not null,b varchar(10)); insert into t1(b) values('abcd');default 设置字段的默认值
--> create table t2(a varchar(10),b varchar(10) default 'hello'); insert into t2(a,b) values('abc','abcd'); insert into t2(a) values('abc'); b列默认值 insert into t2(b) values('abc'); a列为空 select * from t2;unique key(uk) 唯一约束
--> create table t3(a int unique key); insert into t3(a) values(10); insert into t3(a) values(10);报错 insert into t3(a) values(20); select * from t3;primary key(pk) 主键约束(唯一、不能为空)
--> create table t4(a int primary key); insert into t4(a) values(1); insert into t4(a) values(1);报错 **多字段设置主键** create table t5(a int,b int,c int,d int,constraint pk_name primary key(a,b,c));auto_increment 字段自动增加