• 数据库设计



    数据库设计步骤:

    1-确定实体

    2-确定实体属性

    3-确定实体关系

    一对一关系
    一对多关系
    多对多关系
    ps:多对多设计:将两个表建立一个关联关系,将两个表的主键拿出来单独存放在一个表中。

    4-规范化实例

    规范化::定义了规范化的三个级别,范式是具有最小冗余的表结构。


    规范化实例

    第一范式(1ST NF)

    第一范式的目标是确保每列的原子性。

    如果每列都是不可再分的最小数据单元,(也称为最小的原子单元),则满足第一范式。

    第二范式(2ND NF)

    如果一个关系满足1NF,并且除了主键以外的其他列,每个属性是功能依赖于整个键,而不只是部分的键则满足第二范式。

    第二范式要求每个表只描述一件事。

    第三范式(3RD NF)

    如果一个关系满足2NF,每个非键属性只功能依赖于主键,不功能依赖于其他属性,则满足第三范式。

    确保每列和主键列直接相关,而不是间接相关。

    数据组织:

    • 实体——表

    • 属性——字段

    • 实体关系——表的关系(pk/fk)

    创建表

    语法:

    create table table_name (column_name data_type not null|null, ...)
    例如:
    create table cusActivity(
    id int,
    cusNo varchar(20) not null,
    atvData date not null,
    atvPlace varchar2(30),
    atvTitle varchar3(30),
    atcDesc varchar(100) )

    约束

    实体完整性

    主键约束(非空)
    唯一性约束(可以为空)

    域完整性

    Check约束(检测约束的作用)
    (类似于设置函数、规则,用来检测)

    引用完整性

    Foreign KEY 约束(主表中必须有的数据,从表才可以有外键约束)
    (外键约束,将两个表产生关联关系)

    创建约束

    创建列级约束

    创建表级约束

    语法:
    主键、唯一性约束 (pk)

    Constraint <name> Primary Key|Unique (<column_name>)  备注:column_name(列名称)

    Check约束()

    Constraint <name> Check (列条件表达式)

    Foreign Key 外键约束 (fk)

    Constraint <name> Foreign key (<column_name>) references <table_name>(<column_name>)
    (外键约束-添加的数据在主表中必须有此数据)

    删除约束

    语法:

    alter table 表名 drop constraint 
  • 相关阅读:
    Django —— DateTimeField格式
    Django——权限组件(中间件判断用户权限--URL初级)
    linux命令
    性能测试--测试分类
    web安全之csrf攻击
    web安全之xss攻击
    测试用例规范
    禅道操作手册
    fiddler弱网测试
    Web测试系列之测试工具
  • 原文地址:https://www.cnblogs.com/aixing/p/13327705.html
Copyright © 2020-2023  润新知