zoukankan      html  css  js  c++  java
  • 实体与实体之间的联系

    单张表的缺点:

          表的结构不清晰

          造成数据冗余

          表的可扩展性差

    一.外键

    • 一个表的的主码的在另一张表中出现充当非主码字段(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:查询语句执行的结果是一张虚表

  • 相关阅读:
    使用Double计算问题
    IDEA使用破解包后卸载重装或更新后无法启动问题
    GIT找出update-index --assume-unchanged关闭跟踪的文件
    GIT实现本地配置文件修改后不提交远程仓库
    git提交文件操作
    java.time.LocalDate的优点
    Eclipse中导入Maven项目pom.xml报"Unknown"错误的解决
    jsdelivr访问github资源
    java的反射机制及意义
    Oracle创建用户、表空间、视图并赋权限
  • 原文地址:https://www.cnblogs.com/Cpsyche/p/11386139.html
Copyright © 2011-2022 走看看