博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL Server 2008——再谈主键和外键
阅读量:2241 次
发布时间:2019-05-09

本文共 473 字,大约阅读时间需要 1 分钟。

主键:

定义:

      能够唯一标识一个事物的一个字段或者是多个字段组合

注意事项:

  1. 含有主键的表叫做主键表
  2. 主键通常都是整数,不建议使用字符串当主键。
  3. 主键的值通常不允许修改,除非本记录被删除。
  4. 主键不要定义为id,而要定义成表名Id或者表名_id,这样方便以后查看,防止混淆。

外键:

定义:

如果一个表中的若干个字段是来自另外若干个表的主键或唯一键,则这若干个字段就是啊外键。

注意事项:

  1. 外键通常是来自另外表的主键而不是唯一键,因为唯一键可能为null
  2. 外键不一定来自另外表的主键,也可能来自本表的主键。

例如:

     在一个公司中,所以员工都在一张表中,同时这些员工有上下级关系。
那么下表中,字段
EMPNO
表示员工编号(主键),
mgr
字段表示员工的领导编号(外键)。
7369
编号的员工的领导编号是
7902
,同时这位编号为
7902
领导也在员工编号字段内。由此说明外键也可能来自本表的主键

3、
含有外键的表叫做外键表,外键字段来自的哪一张表叫做主键表。

4、
是先删除主键表还是外键表

答案:先删除外键表,在删主键表,否则会报错。

你可能感兴趣的文章
Spring源码剖析1:Spring概述
查看>>
Spring源码剖析2:初探Spring IOC核心流程
查看>>
Spring源码剖析5:JDK和cglib动态代理原理详解
查看>>
Spring源码剖析6:Spring AOP概述
查看>>
【Linux】进程的理解(二)
查看>>
【C++】STL -- Vector容器的用法
查看>>
【Linux】Linux中的0644 和 0755的权限
查看>>
【数据结构】有关二叉树的面试题
查看>>
【Linux】内核态和用户态
查看>>
【Linux】HTTP的理解
查看>>
【Linux】vim的简单配置
查看>>
【C++】const修饰的成员函数
查看>>
【C】堆区和栈区的区别
查看>>
【C++】const 指针与指向const的指针
查看>>
【Linux】多线程和多进程 及其应用场景
查看>>
【C++】构造函数中必须通过初始化列表来进行初始化情况
查看>>
【操作系统】系统调用的概念
查看>>
【C++】构造函数、析构函数抛出异常的问题
查看>>
【C++】关于vector<bool>
查看>>
【操作系统】内存碎片产生原因及终极解决办法
查看>>