• 用表组织数据


    表相关的几个基本概念
    ⦁ 数据的完整性
    数据库需要做两方面的工作:检验每行或每列数据是否符合要求

    ⦁ 实体完整性约束
    实体完整性要求表中的每一行数据都反应不同的实体,不能存在相同的数据,通过索引、唯一约束、主键约束或标识列属性
    ⦁ 域完整性约束
    域完整性是指给定列输入的有效性
    通过数据类型等约束
    ⦁ 引用完整性约束
    在输入或删除时引用完整性约束来保持表之间已定义的关系
    学生表(主表id amescoreid)中的id编号对应成绩表(从表idscore)中的成绩,删除一名学生,先删除成绩中的数据,在删除学生表中的数据
    引用完整性约束通过主键和外键之间的引用关系来实现
    ⦁ 自定义完整性约束
    用户自定义完整性约束用来定义特定的规则


    主键和外键
    主键(Primary key)
    什么是主键?
    是一个或多个字段,他的值用于唯一地表示表中的某一条记录。
    在两个表的关系中,主关键字用来在一个表中的引用来自另一个表中的特定记录,主关键字是一种唯一的关键字(是表定义的一部分)主键列不能包含空值

    注意:如果两个列或者多个列组合起来唯一表示表中的每一行,这叫“复合主键”

    我怎么知道选择谁当主键?
    需要两个原则:最少性和稳定性
    ⦁ 最少性:列数最少的键
    ⦁ 稳定性:指列中的数据特征,因为主键通常用来建立两个表之间的联系,所以主键数据不需要更新,理想状态下,永久不变

    外键(foreign key)
    什么是外键:外键就是指另外表中的主键
    作用:保持数据的一致性,完整性,主要目的是控制存储在外键表中的数据

    使用原则:
    ⦁ 为关联字段或创建外键
    ⦁ 所有的键都必须唯一
    ⦁ 避免使用复合键
    ⦁ 外键总是关联唯一字段

    操作:建库、建表

    创建数据库表
    ⦁ 确定列的数据类型
    分类 数据类型 说明
    二进制数据类型:存储非字符型文本或数据 image 可用来存储图片

    文本数据类型:字符数据类型包括任意字母 char 固定长度的非Unicode
    、字符或数字字符的组合 字符数据
    Varchar 可变长度的非Unicode数据
    Nchar 固定长度的Unicode数据
    Nvarchar 可变长度的
    Text 储存长度文本信息
    Ntxet 存储可变长度的文本
    日期和时间:日期和时间 datatime

    数字类型:该数据仅包含数字 int、smallint、 整数
    整数和浮点 tinyint、bigint
    Float、real 浮点型
    货币数据类型:十进制货币 money
    Bit数据类型:表示是/否的数据 bit 存储布尔类型


    用户表(Users)
    编号 id
    姓名 nameusername Tom
    年龄 age
    成绩编号 scoreId 25

    成绩表(Score)
    编号 id 25
    成绩 score 10

    完善表的设计结构
    1)是否允许为空值
    允许当前列为空,不勾就是不允许

     

    Nvarchar(50):长度

     


    ⦁ 设置主键

    主键不能为空

    3)默认值得设置

    当前列中的列属性

    4)标识列
    自动增长的列(自动添加编号;默认值为1)
    不能在该列上添加数据

    向表中插入数据
    右击编辑200行,直接插入数据


    建立表之间的关系
    建立表间关系实际上就是实施引用完整性约束、建立主表和从表之间的关系



    在哪个表上新建当前表就为从表,另一个表就为主表

    实际:用户----(找)-----成绩
    数据库:成绩为主-----用户为次

     

     

    建立检查约束

    Check约束,用于定义列可接受的数据格式(gender:男、女 成绩:0~150)

    成绩或年龄:score >= 0 and score <= 150
    性别:sex = ‘男’ or sex =’女’
    Id >= 0
    Email: Semail like ‘%@%’

     

  • 相关阅读:
    python 文件路径拼接、判断、创建、输出
    热力图制作
    矩阵文件添加列标签
    cmd运行 ‘.py’ 文件
    hdu 2017 字符串统计
    hdu 2016 数据的交换输出
    hdu 2014 青年歌手大奖赛_评委会打分
    hdu 2013 蟠桃记
    hdu 2012 素数判定
    hdu 2011 多项式求和
  • 原文地址:https://www.cnblogs.com/SFHa/p/8204407.html
Copyright © 2020-2023  润新知