精华内容
下载资源
问答
  • 1.对单属性构成的有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件,如1.1单属性列级定义主键CREATE TABLE Student ( Sno CHAR(9) PRIMARY KEY, /*列级定义主键*/ Sname CHAR(20) )1.2单属性表...

    1.对单属性构成的码有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件,如

    1.1单属性列级定义主键

    CREATE TABLE Student(
    Sno CHAR(9) PRIMARY KEY,  /*列级定义主键*/
    Sname CHAR(20)
    )

    1.2单属性表记定义主键

    CREATE TABLE Student
    (
    Sno CHAR(9),
    Sname CHAR(20),
    PRIMARY KEY (Sno) /*表级定义主键*/
    )

    2.对于多属性构成的码只有一种说明方法,即定义为表级约束条件,如

    CREATE TABLE SC
    (
    Sno CHAR(9) NOT NULL,
    Cno CHAR(4) NOT NULL,
    PRIMARY KEY(Sno,Cno) /*表级定义主键*/
    )
    


    展开全文
  • 数据库主码和外

    万次阅读 多人点赞 2019-04-24 21:29:34
    想要明白主码和外的概念前,需要先对域和笛卡儿积概念有一个彻底的理解。请阅读的童靴务必耐心~O(∩_∩)O 1.域 定义:域是一组 具有相同数据类型值的 集合。(域就是集合,不过集合里的元素是相同的数据类型) ...

    目录

    1.域

    2.笛卡儿积

    3.关系

    主码

    外码


    想要明白主码和外码的概念前,需要先对域和笛卡儿积概念有一个彻底的理解。请阅读的童靴务必耐心~O(∩_∩)O

    1.域

    定义:域是一组 具有相同数据类型值集合。(域就是集合,不过集合里的元素是相同的数据类型)

    例如,自然数、整数、实数、大于一小于一百的数、{男,女}都可以是域。

    2.笛卡儿积

    笛卡儿积是 域上 的一种集合运算。

    定义:给定一组域D1,D2,D3···,Dn,允许其中某些域是相同的,D1,D2,D3,···,Dn的笛卡儿积定义为

               D1×D2×D3×···×Dn={(d1,d2,d3,···,dn) | di∈Di ,i=1,2,···,n}

    大白话就是从每个域中抽出一个元素放在一起,每一个(d1,d2,d3,···,dn) 称之为一个元组

    这样说还是比较抽象,举一个例子: 

                                      

    3.关系

    定义: D1×D2×D3×···×Dn 的子集叫做在域D1,D2,D3,···,Dn上的 关系,表示为 R(D1,D2,D3,···,Dn)。

                (笛卡儿积中若干个元组的集合就是关系)

    主码

    若关系中的某一个属性组的值能唯一地标识一个元组,而其子集则不能,则称该属性组为候选码(candidate key)

    若一个关系中有多个候选码,则选定其中一个为主码。例如学生的学号就可以作为一个主码,因为它是唯一的。

    一个关系可以没有主码,但是设置一个主码的话对数据库查询效率会高一些。

    主码不一定是只有一个属性,主码可以由一个或者多个属性组成。主码是候选码之一。

    考虑主码的时候考虑的是属性的唯一性,即该属性的值不会重复,如果重复了就无法唯一标识整个元组。

    主码和设置非空的关系是什么?

    主码的要求是:非空、唯一性。

    而设置某个属性:非空仅仅是不允许输入空值,但却可以重复。

     

    外码(外键)

    那么什么是外码呢?

    如果一个关系中的一个属性(该属性不能是候选码)是另外一个关系中的主码则这个属性为外码。

    外码的值要么为空,要么要为其对应的主码中的一个值。

     

    那么外键的作用是什么呢?

    保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。

    使两张表形成关联,外键只能引用外表中的列的值或使用空值。

     

    阻止执行(情况一):

    1、从表插入新行,其外键值不是主表的主键值便阻止插入;

    2、从表修改外键值,新值不是主表的主键值便阻止修改;

    3、主表删除行,其主键值在从表里存在便阻止删除(要想删除,必须先删除从表的相关行);

    4、主表修改主键值,旧值在从表里存在便阻止修改(要想修改,必须先删除从表的相关行)。

    级联执行(情况二):

    1、主表删除行,连带从表的相关行一起删除;

    2、主表修改主键值,连带从表相关行的外键值一起修改。

           两种方法提供给用户选择。无论选取哪种方法,从表里都不会有多余行。

           从另一个角度理解,用拒绝同一事物在从表中的标志与主表不一致。

     

    展开全文
  • 数据库主码、外

    万次阅读 多人点赞 2016-12-28 10:42:18
    数据库主码、外 主码和外是用来实现参照完整性的,外的数据项需参照主码的数据项来操作。具体实现是在创建数据库时为表间创立关系。如:  三个关系: 学生信息表(学号、姓名、性别、出生年月、籍贯、所属...

                                                                             数据库主码、外码

    主码和外码是用来实现参照完整性的,外码的数据项需参照主码的数据项来操作。具体实现是在创建数据库时为表间创立关系。如: 

    三个关系:
    学生信息表(学号、姓名、性别、出生年月、籍贯、所属学院) //学号 是主键(主码
    课程表(课程号,课程名称,学分) //课程号 是主键(主码
    成绩表(学号,课程号,成绩) //学号 是外码;课程号 是外码

    “成绩表”(从表)的学号参照“学生信息表”(主表)的学号来录入。1、也就是主表里面没有的学号,从表里面不能有,外码参照主码录入;2、级联操作,即当删除、修改某个主表里面的学号时,从表里面的那个学号会相应的自动删除、修改。外码参照主码操作。
    展开全文
  • 例如:学生关系(学号,身份证号,姓名,院系,专业,性别 ,生日),有两个候选:【学号】和【身份证号】,我们可以选择学号为主码,也可以选择身份证号为主码(当然,一般还是选择学号为主码)。 属性:上例中:...

    候选码:关系中的一个属性或者属性组,能够唯一标识一个元组,且它的真子集不能唯一标识元组。

    主码:从所有候选码中选择一个,作为主码。例如:学生关系(学号,身份证号,姓名,院系,专业,性别 ,生日),有两个候选码:【学号】和【身份证号】,我们可以选择学号为主码,也可以选择身份证号为主码(当然,一般还是选择学号为主码)。

    属性:上例中:学号、身份证号、姓名。。。都是学生的属性。

    主属性:候选码的中的一个属性。上例中的学号、身份证号都可以称为主属性。选课(学号,课程号),此关系的候选码只有一个,为:【学号、课程号】,故主属性有:学号、课程号。

    碰到更多再进行补充,如有错误,请多多指正,_

    展开全文
  • 2.主码定义:如果一个关系有多个候选,则选定其中一个为主码; 3.属性定义:候选的诸属性称为属性; 4.非属性定义:不包含在任何候选中的属性称为非属性; 5.实体完整性规则:如果属性(一个或者一...
  • 数据库 属性 候选 主码的关系 定义 唯一标识实体的属性集称为。例如学号是学生实体的 属性 实体所具有的某一特性称为属性 候选 设K为R<U,F>中的属性或属性组合,若K→U,则K为R的候选 ...
  • 数据库--主码、候选、外

    千次阅读 2020-04-27 13:26:01
  • 主码定义:如果一个关系有多个候选,则选定其中一个为主码属性定义:候选的诸属性称为属性; 非属性定义:不包含在任何候选中的属性称为非属性; 实体完整性规则:如果属性(一个或者一组属性...
  • 数据库实验报告1数据库定义实验

    千次阅读 2020-04-29 11:18:58
    (1)理解和掌握数据库DDL语言,能熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。 (2)掌握SQL语句常见语法错误的调试方法。 二、 实验内容: 教材3.3数据定义中例3.1至例3.11的要求操作,并截取...
  • ❤️ 关系数据结构及形式化定义 1.笛卡尔积:当做一个表来说,就是一行是一个元组,一列是一个域,是域的基数的相乘 2.关系:一张规范的二维表 3.域:是一组具有相同的数据类型的值的集合 4.域的基数:用白话说就是...
  • 数据库定义参照完整性

    千次阅读 2020-05-18 11:03:18
    关系模型的参照完整性在CREATE TABLE 中用FOREIGN KEY 短语定义哪些列为外,用REFERENCES短语指定这些外参照哪些表的主码。 例如:关系SC中一个元组表示一个学生选修的某门课程的成绩,(Sno,Cno)是主码,Sno...
  • 1、候选:能够唯一标识一条记录的最小属性集。若关系中的一个属性或属性组的值能够唯一地标识一个元组,且他的真子集不能唯一的标识一个元组,则称这个属性或属性组做候选...关键字是一种唯一关键字,表定义的一...
  • 数据库中几个基本概念 主码

    万次阅读 多人点赞 2015-07-17 10:20:22
    主码 ,外也可以成为主键,外键。 什么是主码主码是一个能唯一标识一个元组的属性。在一个关系(表)中,主码不一定只有一个,但是一定要有的。因为元组,是对世界中某种事物的数据描述,而世界中各种事物,都...
  • 定义:若一个关系有多个候选,则选定其中一个为主码属性 定义:候选的诸属性成为属性。 非属性 定义:不包含在任何候选中的属性称为非属性。 下面就拿一个例子说明: 例如:一个表中有属性...
  • 先说候选,候选就是可以区别一个元组(即表中的一行数据)的属性或属性的集合,比如学生表student(id,name,age,sex,deptno),其中的id是可以唯一标识一个元组的,所以id是可以作为候选的,既然id都可以做候选...
  • (1)数据库定义功能

    千次阅读 2019-08-24 22:04:55
    SQL结构化查询语言,用户操作关系数据库的通用语言,按其功能分为四大部分(DDL,DCL,DML): 数据库定义语句 ① CREATE(创建基本表) 格式:[ ] 内的内容表示可选: ...
  • SQL SERVER数据库定义和建立

    千次阅读 2017-04-30 10:10:43
    创建数据库
  • 数据类型设置为numeric(18,0),这时打开该表下的列选项,右键点击主码,选择“属性”,会发现“标识”值变为“True”,“标识种子”变为“1”(该主码起始值),以及“标识增量”变为“1”(每新增一个项时,主码...
  • 实验1.1 数据库定义 1实验目的 理解和掌握数据库DDL语言,能够熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。 2实验内容和要求 理解和掌握SQL DDL语句的语法,特别是各种参数的具体含义和使用方法;...
  • 主码3. 外关系的完整性总结 关系的 1. 候选 候选是能够唯一标识关系中某一个元组的一个属性或属性集,也叫候选键 如: 学生关系中,学号可以唯一标识学生,班级+姓名也可以唯一标识一个学生,学号和...
  • 数据库中的

    千次阅读 2019-01-11 14:49:19
    1.数据库系统中的基本概念,所谓就是能唯一标识实体的属性,它是整个实体集的性质,而不是单个实体的性质。它包括超码、候选和主。 (1)超码是一个或多个属性的集合,这些属性可以让我们在一个实体集中...
  • 数据库】搞懂 超码、候选主码、函数依赖!

    千次阅读 多人点赞 2019-07-31 17:57:02
    今天看了数据库范式,结果盯着一篇知乎回答看了很久还是没搞明白,在讲的时候和我看到的其它博客好像不太一样,由于讲到了函数依赖、唯一标识等这些,我就去看了函数依赖,看完再回来看结果还是发现哪里不对,所以...
  • 在学习的概念之前,我们必须掌握数据库函数依赖的相关概念。数据库函数依赖的概念 举栗子????:假设我们有一个关系模式:S(Sno,Sid,Sname,Cno,Grade),其中Sid表示的是学生的身份证号码。 1、候选(Candidate Key)...
  • 关于数据库的各种汇总理解

    千次阅读 2016-06-06 17:59:52
    主码定义:如果一个关系有多个候选,则选定其中一个为主码属性定义:候选的诸属性称为属性; 非属性定义:不包含在任何候选中的属性称为非属性; 实体完整性规则:如果属性(一个或者一组属性...
  • 数据库-

    千次阅读 多人点赞 2017-12-26 12:35:16
    Q:主码,候选的区别 A:是数据系统中的基本概念。所谓就是能唯一标识实体的属性,是整个实体集的性质,而不是单个实体的性质。它包括超码,候选吗,主码。 如果K是一个超码,那么K的任意超集也是超码...
  • 数据库中的超码、候选主码

    千次阅读 多人点赞 2016-11-30 21:31:40
    它包括超码,候选主码。 超码是一个或多个属性的集合,这些属性可以让我们在一个实体集中唯一地标识一个实体。如果K是一个超码,那么K的任意超集也是超码,也就是说如果K是超码,那么所有包含K的集合也是超码。...
  • 数据库中的函数依赖,主码,候选等的区别

    千次阅读 多人点赞 2018-04-18 23:11:22
    由以上定义可得,在一个关系表中肯定含有,另外: <span style="color:#ff0000">严格来说: <a data-cke-saved-href="https://www.baidu.com/s?wd=%E4%B8%BB%E5%B1%9E%E6%80%A7&from=1012015a&...
  • 它包括超码,候选主码。 超码是一个或多个属性的集合,这些属性可以让我们在一个实体集中唯一地标识一个实体。如果K是一个超码,那么K的任意超集也是超码,也就是说如果K是超码,那么所有包含K的集合也是超码。...
  • 主码:若一个关系中有多个候选,则选定其中的一个为主码 属性:候选属性组中的各个属性称为属性 非属性:不包含在候选中的属性称为非属性 全码:关系模式的所有属性是这个关系的候选,则称该属性组为全码 ...
  • 数据库设置外实例

    千次阅读 2019-06-06 15:53:24
    Cpno char(3) foreign key references Course(Cno), /*这里是自引用主码*/ Ccredit smallint, --foreign key Cpno references Course(Cno) ); create table SC /*建立学生选课表*/ (Sno char(8) , Cno char(3)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 460,746
精华内容 184,298
关键字:

数据库定义主码