实体与实体之间的联系

Posted cpsyche

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实体与实体之间的联系相关的知识,希望对你有一定的参考价值。

单张表的缺点:

      表的结构不清晰

      造成数据冗余

      表的可扩展性差

一.外键

  • 一个表的的主码的在另一张表中出现充当非主码字段(Foreign Key)
  • 表与表之间用外码进行连接
  • 外键虽然能够帮你强制建立表关系 但是也会给表之间增加数据相关的约束,通过cascade可以进行级联更新
  • 外键约束
    • 1.在创建表的时候 必须先创建被关联表
    • 2.插入数据的时候 必须先插入被关联表的数据

二.实体与实体之间的关系

  • 一对一关系
    • 外键字段放在使用频率高的表上
  • 一对多关系
    • 外键字段放在多的一方
  • 多对多关系
    • 建在关系表中

三.修改表的完整语句

技术图片
1.修改表的完整语句
            1. 修改表名  
                  ALTER TABLE 表名 
                                      RENAME 新表名;
            2. 增加字段
                  ALTER TABLE 表名
                                      ADD 字段名  数据类型 [完整性约束条件…],
                                      ADD 字段名  数据类型 [完整性约束条件…];
                  ALTER TABLE 表名
                                      ADD 字段名  数据类型 [完整性约束条件…]  FIRST;  # 直接移到最前面
                  ALTER TABLE 表名 
                                      ADD 字段名  数据类型 [完整性约束条件…]  AFTER 字段名;  # 寻找插哪个字段的后面                    
            3. 删除字段
                  ALTER TABLE 表名 
                                      DROP 字段名;
            4. 修改字段  # modify只能改字段数据类型完整约束,不能改字段名,但是change可以!
                  ALTER TABLE 表名 
                                      MODIFY  字段名 数据类型 [完整性约束条件…];
                  ALTER TABLE 表名 
                                      CHANGE 旧字段名 新字段名 新数据类型 [完整性约束条件…];
View Code

四.复制表

 复制表结构+记录 (key不会复制: 主键、外键和索引)
create table 表一 select * from 表eer;

ps:查询语句执行的结果是一张虚表

以上是关于实体与实体之间的联系的主要内容,如果未能解决你的问题,请参考以下文章

7.3 概念结构设计

JAVA中,类、对象、实体、实体类、实体对象之间存在怎样的联系??请高手做形象的解释。

E—R图

数据库模型

ANSYS中的实体模型的单元划分问题

Hibernate5.x表与表之间的关系操作代码实现