美文网首页
MySQL数据类型(2)

MySQL数据类型(2)

作者: wangfs | 来源:发表于2017-08-23 22:19 被阅读18次

    mysql的数据类型:

    • 字符型
    • 数值型
    • 日期时间型
    • 内建类型
    字符型:
    • CHAR(不区分字符大小写),BINARY(区分字符大小写): 定长数据类型
    • VARCHAR(不区分字符大小写),VARBINARY(区分字符大小写): 变长数据类型,需要结束符。
    • TEXT: TINYTEXT(255个字符,2**8),TEXT(65535个字符,2**16),MEDIUMTEXT(1600多万个字符,2**24),LOGTEXT(40多亿个字符,2**32)
    • BLOB: TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB(支持的字符数个数同上)
    • ENUM,SET:
    数值型:

    精确数值型:

    • 整型数据:TINYINT(2**8),SMALLINT(2**16),MEDIUMINT,INT,BIGINT
    • 十进制型:DECIMAL
      近似数值型:
    • 浮点型:FLOAT,DOUBLE
    日期时间型:
    • DATE(占用3个字节)
    • TIME(占用3个字节)
    • DATETIME(占用8个字节,需要额外说明哪部分是日期和时间)
    • TIMESTAMP 时间戳
    • YEAR(2),YEAR(4)
    字符型类型修饰符:
    • NOT NULL: 非空约束
    • NULL: 不写则为NULL
    • DEFAULT 'STRING': 指明默认值
    • CHARACTER SET ' ': 使用的字符集(一般在my.cnf配置文件里指明)
    • COLLATION: 使用的排序规则
      mysql> SHOW CHARACTER SET;
      mysql>SHOW COLLATION;
    整型修饰符:
    • NOT NULL
    • NULL
    • DEFAULT NUMBER
    • AUTO_INCREMENT: UNSIGNED(无符号,紧跟在数据类型之后),PRIMARY KEY|UNIQUE KEY NOT NULL
      mysql > select last_insert_id();(查看字段自增到哪里)
    日期时间型修饰符:
    • NOT NULL
    • NULL
    • DEFAULT
    内建类型SET和ENUM的修饰符:
    • NOT NULL
    • NULL
    • DEFAULT

    mysql的SQL MODE: 定义mysql对约束等的响应行为
    mysql> set global sql_mode='mode';

    mysql> set @@global.sql_mode='mode';
    需要修改权限,仅对修改后新创建的会话有效,对已经建立的会话无效

    mysql> set session sql_mode='mode';

    mysql> set @@session.sql_mode='mode';

    常用的mode: TRADITIONAL,STRICT_TRANS_TABLES,or STRICT_ALL_TABLES

    SQL语句:

    • DDL: 数据定义语言,creat,alter,drop

    • DDL可使用的DB组件: 数据库,表,索引,试图,用户,存储过程,触发器,事件调度器等。

    • DML: 数据操纵语言,insert,delete,update,select

    相关文章

      网友评论

          本文标题:MySQL数据类型(2)

          本文链接:https://www.haomeiwen.com/subject/tsgjdxtx.html