• 数据库常见数据类型和约束


    常用数据类型

    MYSQL数据库支持多种类型,大致可以分为三个类型:数值型、时间/日期型和字符型

    在这里就列举一些我们常用的数据类型

    1、数值型

    表示整数型数据类型(tinyint、smallint、mediumint、int)  浮点型数据类型(float、double)

    用法:

    1)、整形   ( 学号)

    区别为存储大小不同,取值范围不同

    tinyint(m)  取值 【-128,127】

    tinyint(m)  unsigned(可省略) zerofill   取值 【0,255】

    m 定义为字段长度,与zerofill搭配时,数据精度不足时,自动用0补齐  例如:(001)

    2)、浮点型    (身高)

    float (m , z)    m : 字段总长度    z : 小数点后的位数

    取值【-3.4*10-38,3.4*1038

    缺点 : 丢失精度,相较于double精度更低

    2、字符型

    表示字符型数据类型(char、varchar)

    char (m)  m 影响存储长度  (姓名)

    3、时间日期型

    表示时间值的日期和时间类型(datetime、date、time和year)

    Mysql中的约束

    1、not null

    not null 即为非空约束,指定某一行的值不能为null。

    建立一个s表,将id设置为int型,not null约束

    插入数据id为null就会报错

    备注:所有的类型的值都可以是null,包括int、float、dateTime等数据类型 空字符串(”)是不等于null,0也不等于null 。

    2、unique

    unique代表唯一约束。唯一约束是指定table的列或列组合不能重复,保证数据的唯一性。但是可以为多个null,同一个表可以有多个唯一约束,多个列组合的约束。

    在创建唯一约束的时候,如果不给唯一约束名称,就默认和列名相同。MySQL会给唯一约束的列上默认创建一个唯一索引;

     唯一约束是通过唯一索引实现的,换句话说,唯一索引是实现唯一约束的基础。所以,建唯一约束,会自动建唯一索引,但建唯一索引,不会自动创建唯一约束。

    建表给doc加上一个唯一约束

    插入数据示例

    插入成功。说明对于,当为null的时候,唯一索引是不进行判断唯一性的

    3、primary key

    作用:用来保证数据完整性

    特点:

    1)、主键约束相当于唯一约束+非空约束的组合,主键约束列不允许重复,也不允许出现空值;

    2)、每个表最多只允许一个主键,建立主键约束可以在列级别创建,也可以在表级别上创建;

    3)、MySQL的主键名总是PRIMARY, 当创建主键约束时,系统默认会在所在的列和列组合上建立对应的唯一索引;

    4、foreign key

    作用:保证一个或两个表之间的参照完整性,构建一个表的两个字段或是两个表的两个字段之间的参照关系。

    特点:

    1)、从表的外键值必须在主表中能找到或者为空。

    2)、当主表的记录被从表参照时,主表的记录将不允许删除,如果要删除数据,需要先删除从表中依赖该记录的数据, 然后才可以删除主表的数据

  • 相关阅读:
    POJ 1325、ZOJ 1364、HDU 1150 Machine Schedule
    约数的计算
    Opencv距离变换distanceTransform应用——细化字符轮廓&&查找物体质心
    霍夫圆变换
    【奇葩笔试】—— printf() 作为函数的参数及其返回值
    【奇葩笔试】—— printf() 作为函数的参数及其返回值
    字典(dictionary)的设计
    字典(dictionary)的设计
    极值点、驻点、鞍点、拐点
    极值点、驻点、鞍点、拐点
  • 原文地址:https://www.cnblogs.com/li8537/p/11403898.html
Copyright © 2020-2023  润新知