mysql 列类型

1.数值型

  create table t4 (
                            id  unsigned mediumint auto_increment primary key,
                            name char(32)  not null  default '',
                            pwd  char(32)  not null  default ''
                        )engine=Innodb charset=utf8;
                        
                        tinyint :
                            范围:  
                                有符号: -128到127
                                无符号: 0 到 255  unsigned
                        smallint
                            范围:  
                                有符号: -32768到32767
                                无符号: 0 到 65535  unsigned
                        
                        mediumint
                            范围:  
                                有符号: -8388608到8388607
                                无符号: 0 到 16777215  unsigned
                        int
                        bigint
                        
                        区别:
                            a. 取值范围不一样, 根据自己公司的业务来去选择
                            b. 无符号和有符号的意思
                        
                        float(M,D) 浮点型
                        decimal(M,D) 定点型 比float更加的精准
                            
                            例如: 3.1415151519868789789
                            float: 3.141515000000000000
                            decimal : 3.1415151519868789789
                            
                            126.35
                            
                            M:小数总共多少位 decimal(5, )
                            D:小数点后面几位 decimal(5, 2)
                            
                            使用场景:
                                比如 说存 salary 工资 : 6000.23 decimal(,2)

2.字符串类型

  char : 定长 char(32)  这一列的值就是32  优点: 速度快  缺点: 浪费
       varchar : 变长 varchar(32)              优点: 不浪费, 节省空间  缺点: 速度慢

  例:create table userinfo (

         name varchar(128)  not null  default '',
                                pwd  char(32)  not null  default '',
                                create_time  datetime not null default  '1970-01-01 00:00:00'
                                )engine=Innodb charset=utf8;

        一般情况下, 如果没有100%的把握, 都是用varchar()

  text: 文本  范围比较大, 如果存储大量字符的话, 可以使用这个字段

3.时间类型

  date 2019-6-12

 

posted @ 2019-06-13 09:27  adiugy  阅读(498)  评论(0编辑  收藏  举报