码迷,mamicode.com
首页 > 数据库 > 详细

三、MySQL数据类型

时间:2015-05-31 18:42:33      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:mysql数据类型

.MySQL数据类型
数值类型        语句        大小    范围(有符号)      范围(无符号)
微小整数    tinyint    1k     -128~127        0~255
小整数        smallint    2k    -32768~32767        0~65535
中整数        mediumint    3k    -2(23)~2(23)-1    0~2(24)-1
大整数        int        4k    -2(31)~2(31)-1    0~2(32)-1
极大整数    bigint        8k    -2(63)~2(63)-1    0~2(64)-1
单数度浮点数    float        4k
双精度浮点数    double        8k

注:使用UNSIGNED修饰时,对应的字段只保存正数
  数值不够指定宽度时,在左边填空格补位
  宽度仅是显示宽度,存数值的大小由类型决定
  使用关键字ZEROFILL时,填0代替空格补位
  当字段值与类型不匹配时,字段值作为0处理
  数值超出范围时,仅保存最大/最小值 


1.数据类型的使用
float(n,m)
N  数字的总位数
M  小数位的位数
create  table  gz(gz  float(7,2));

char(宽度)    定长      (默认宽度是1)
varchar(宽度) 变长   ( 必须指定宽度)
create   table  stuinfo3 (name  varchar(10),
age  tinyint   unsigned,
gz   float(7,2)
);

create  table  t14(id  int);
create  table  t12(id  int(3));
create  table  t12(id  int(3)  zerofill);
insert  into   t12 values(10000);


2.日期/时间类型
年   year        2014           YYYY
                 20xx            1~69
                 19xx            70~99
                    0000               0
日期  date        2014-11-20        YYYY-MM-DD
时间  time        18:30:00        HH:MM:SS
日期时间   datetime/timestamp   2014-12-30  14:50:00
                              YYYY-MM-DD   HH:MM:SS
样例:
create  table  t15(
name   char(10),
birthday   date,
s_start   year,
up_class  time,
meetting  datetime
);

insert  into  t15
values
("jim",20141120,1985,090000,20141005164000);

3:时间函数
(获取系统当前指定年月日)
now()  year()   month()  day()  time()
select  now();
select  year( now() );

insert  into  t15
values
("jim",now(),now(),now(),now());


datetime/timestamp
create  table  t16(
time1   datetime,
time2   timestamp     //不给字段赋值时,使用系统时间给字段赋值。
);

insert into  t16(time1) values (20151104103024);

4.枚举类型
(指字段的值只能在列举范围内选择)
enum("值1",值2,值N)     只能选择1个
set("值1",值2,值N)       可以选择一个到多个

样例:
create  table  t18(
name  char(10),
sex   enum( "boy","girl","no"),
likes  set("book", "film","music","football","game")
);  

insert  into  t18
values
("tom","boy","book,film,game");

insert  into  t18 values ("lucy",2,"music,film");


5.约束条件
允许为空: null  (默认)
不允许为空:not null
设置默认值:default

样例:1
create  table  t19(
name  char(10)  not null,
sex   enum( "boy","girl","no"));

样例2:
设置字段的默认值    dealut  值
create  table  t20(
name  char(10)  not null,
sex   enum( "boy","girl","no")  not null   default   "boy",
age   tinyint   unsigned   not  null  defalut  23);


本文出自 “刘福” 博客,请务必保留此出处http://liufu1103.blog.51cto.com/9120722/1656826

三、MySQL数据类型

标签:mysql数据类型

原文地址:http://liufu1103.blog.51cto.com/9120722/1656826

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!