zoukankan      html  css  js  c++  java
  • 创建表的完整性约束 和 整型类型

    创建表的完整性约束

    宽度:

      对存储数据的限制

      char(1) 只能存一个字符

      如果超了 mysql会自动帮你截取

        1 插入的时候 mysql会自动截取 (浪费资源)

        2 会直接报错(mysql严格模式)提示无法存储:Data too long for column 'name' at row 1 (推荐)

    使用数据库的准则 能尽量少让数据库干活就尽量少干活

    约束条件初识>>> null 与 not null  相当于None

      alter table t5 modify name char not null; 

      not null该字段不能插空

    类型和中括号内的约束
    类型约束的是数据的存储类型
    而约束是基于类型之上的额外限制

    字段类型 整型类型

    TINYINT SMALLINT MEDIUMINT INT BIGINT

    有符号 有正负

    TINYINT   
    默认是否有符号 默认是带有符号的(-128,127)
    超出限制会如何 超出之后只会存最大值或者最小值

    create table t6(id TINYINT);

    有符号修改为无符号 alter table 表名 modify 字段名 TINYINT unsigned ;

    char后面的数字是用来限制存储数据的长度的


    特例:只有整型后面的数字不是用来限制存储数据的长度 而是用来控制展示的数据的位数   (符号也算一位 加上符号最大11位 )
    int(8) 够/超8位有几位存几位,不够8位空格填充

      强调:**对于整型来说,数据类型后的宽度并不是存储限制,
      而是显示限制,所以在创建表时,
      如果字段采用的是整型类型,完全无需指定显示宽度, 默认的显示宽度,足够显示完整当初存放的数据

    只要是整型 都不需要指定宽度 因为有默认的宽度 足够显示对应的数据

       
    修改约束条件 不够8位的情况下 用0填充

    zerofill  0填充多余的位数

    not null 不能为空
    unsigned 无正负符号
    zerofill 0填充多余的位数

    趁自己还没死 多折腾折腾
  • 相关阅读:
    通过Nginx,Tomcat访问日志(access log)记录请求耗时
    Nginx+Lua+Redis 对请求进行限制
    windows7+eclipse+hadoop2.5.2环境配置
    ubuntu + hadoop2.5.2分布式环境配置
    CentOS6.5上golang环境配置
    curl POST
    .sh 的运行
    CentOS 安装nginx
    Amazon ec2 改成密码登录方式
    SSH 服务器不用密码
  • 原文地址:https://www.cnblogs.com/lddragon/p/11379368.html
Copyright © 2011-2022 走看看