精华内容
下载资源
问答
  • 为什么数据库中同关系属性名是不能重名的,不同的关系属性名是可以重?能举个例子吗?
  • 关系中的某一属性属性组的值能唯一的标识个元组,而其任何、子集都不能再标识,则称该属性组为(超级码)候选码。 例如:在学生实体,“学号”是能唯一的区分学生实体的,同时又假设“姓名”、“班级”的...

    在数据库的表(关系)中能够用于唯一区分开每个记录(元组)的属性或属性的集合,我们称之为

    若关系中的某一属性或属性组的值能唯一的标识一个元组,而其任何、子集都不能再标识,则称该属性组为(超级码)候选码

    例如:在学生实体中,“学号”是能唯一的区分学生实体的,同时又假设“姓名”、“班级”的属性组合足以区分学生实体,那么{学号}和{姓名,班级}都是(超级码)候选码。

    简单的说,候选码(超级码)就是可以被选为主码的属性或属性组。当一个关系有N个属性或属性组可以唯一标识时,则说明该关系有N个候选码,可以选定其中一个作为主码。

    候选码中出现过的属性称为主属性

    非主属性就是不包含在任何候选码中的属性,依赖于主码。

    展开全文
  • 数据库中的定义属性(字段)

    千次阅读 2018-08-09 21:40:08
    定义属性 概述 ·django根据属性的类型确定以下信息 ... ·django会为表增加自动增长的主键列,个模型只能有个主键列,如果使用选项设置某属性为主键列后,则django不会再生成默认的主键列 ·属性命名限制 ...

    定义属性

    概述
        ·django根据属性的类型确定以下信息
            ·当前选择的数据库支持字段的类型
            ·渲染管理表单时使用的默认html控件
            ·在管理站点最低限度的验证
    
        ·django会为表增加自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后,则django不会再生成默认的主键列
    
        ·属性命名限制
            ·遵循标识符规则
            ·由于django的查询方式,不允许使用连续的下划线
    
    
    
    库
        ·定义属性时,需要字段类型,字段类型被定义在django.db.models.fields目录下,为了方便使用,被导入到django.db.models中
    
        ·使用方式
            ·导入from django.db import models
            ·通过models.Field创建字段类型的对象,赋值给属性
    
    
    逻辑删除
        ·对于重要数据都做逻辑删除,不做物理删除,实现方法是定义isDelete属性,类型为BooleanField,默认值为False
    
    
    字段类型
        ·AutoField
            ·一个根据实际ID自动增长的IntegerField,通常不指定如果不指定,一个主键字段将自动添加到模型中
    
        ·CharField(max_length=字符长度)
            ·字符串,默认的表单样式是 TextInput
    
        ·TextField
            ·大文本字段,一般超过4000使用,默认的表单控件是Textarea
    
        ·IntegerField
            ·整数
    
        ·DecimalField(max_digits=None, decimal_places=None)
            ·使用python的Decimal实例表示的十进制浮点数
            ·参数说明
                ·DecimalField.max_digits
                    ·位数总数
                ·DecimalField.decimal_places
                    ·小数点后的数字位数
    
        ·FloatField
            ·用Python的float实例来表示的浮点数
    
        ·BooleanField
            ·true/false 字段,此字段的默认表单控制是CheckboxInput
    
        ·NullBooleanField
            ·支持null、true、false三种值
    
        ·DateField([auto_now=False, auto_now_add=False])
            ·使用Python的datetime.date实例表示的日期
            ·参数说明
                ·DateField.auto_now
                    ·每次保存对象时,自动设置该字段为当前时间,用于"最后一次修改"的时间戳,它总是使用当前日期,默认为false
                ·DateField.auto_now_add
                    ·当对象第一次被创建时自动设置当前时间,用于创建的时间戳,它总是使用当前日期,默认为false
            ·说明
                ·该字段默认对应的表单控件是一个TextInput. 在管理员站点添加了一个JavaScript写的日历控件,和一个“Today"的快捷按钮,包含了一个额外的invalid_date错误消息键
            ·注意
                ·auto_now_add, auto_now, and default 这些设置是相互排斥的,他们之间的任何组合将会发生错误的结果
    
        ·TimeField
            ·使用Python的datetime.time实例表示的时间,参数同DateField
    
        ·DateTimeField
            ·使用Python的datetime.datetime实例表示的日期和时间,参数同DateField
    
        ·FileField
            ·一个上传文件的字段
    
        ·ImageField
            ·继承了FileField的所有属性和方法,但对上传的对象进行校验,确保它是个有效的image
    
    
    字段选项
        ·概述
            ·通过字段选项,可以实现对字段的约束
            ·在字段对象时通过关键字参数指定
    
        ·null
            ·如果为True,Django 将空值以NULL 存储到数据库中,默认值是 False
    
        ·blank
            ·如果为True,则该字段允许为空白,默认值是 False
    
        ·注意
            ·null是数据库范畴的概念,blank是表单验证证范畴的
    
        ·db_column
            ·字段的名称,如果未指定,则使用属性的名称
    
        ·db_index
            ·若值为 True, 则在表中会为此字段创建索引
    
        ·default
            ·默认值
    
        ·primary_key
            ·若为 True, 则该字段会成为模型的主键字段
    
        ·unique
            ·如果为 True, 这个字段在表中必须有唯一值
    
    
    关系
        ·分类
            ·ForeignKey:一对多,将字段定义在多的端中
            ·ManyToManyField:多对多,将字段定义在两端中
            ·OneToOneField:一对一,将字段定义在任意一端中
    
        ·用一访问多
            ·格式
                ·对象.模型类小写_set
            ·示例
                grade.students_set
    
        ·用一访问一
            ·格式
                ·对象.模型类小写
            ·示例
                ·grade.students
    
        ·访问id
            ·格式
                ·对象.属性_id
            ·示例
                ·student.sgrade_id
    
    展开全文
  • 数据库中关系代数关系运算

    千次阅读 2016-10-25 16:42:30
    步:找出关系R和关系S相同的属性,即Y属性。在关系S对Y做投影(即将Y列取出);所得结果如下: 第二步:被除关系R与S不相同的属性列是X,关系R在属性(X)上做取消重复值的投影为{X1,

    除法运算的定义:

    关系代数中的除法运算 - 魔封波 - 书心斋

    这个概念的描述的非常抽象,刚开始学习的同学完全不知所云。这里通过一个实例来说明除法运算的求解过程:

    设有关系R、S 如图所示,求R÷S 的结果:

    关系代数中的除法运算 - 魔封波 - 书心斋

    求解步骤过程:
    第一步:找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影(即将Y列取出);所得结果如下:

    关系代数中的除法运算 - 魔封波 - 书心斋

    第二步:被除关系R中与S中不相同的属性列是X,关系R在属性(X)上做取消重复值的投影为{X1,X2};
     

    第三步:求关系R中X属性对应的像集Y 
     
    根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示:

    关系代数中的除法运算 - 魔封波 - 书心斋

    第四步:判断包含关系
    R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。对比即可发现:
    X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1;
    而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2

    关系代数中的除法运算 - 魔封波 - 书心斋

    展开全文
  • 数据库之关系数据库之超码,候选码,主码,主属性,非主属性(非码元素)之间的关系 超码(Super Key): 在关系模型中能唯一标识个元组的属性集称为关系模式的超码。 候选码(Candidate Key): 不含多余属性的...

    数据库之关系数据库之超码,候选码,主码,主属性,非主属性(非码属性)之间的关系


    超码Super Key):

    在关系模型中能唯一标识一个元组的属性集称为关系模式的超码。


    候选码Candidate Key):

    不含多余属性超码

    (注:这里的不含多余属性类似于随机过程中状态的最小闭集的概念,即是说,在候选码这个属性集U任意去掉一个属性p,剩余集合U-{p}不再是一个超码


    主码Primary Key):

    用户从候选码中选定的一个码作为主码


    替换码Alternative Key):

    非主码候选码


    主属性Primary Attribute):

    所有候选码的并集中的属性。


    非主属性非码属性)(Non-prime Attribute):

    主属性集整个属性集上的补集中的元素。


    最后注意主属性不一定能够单独作为候选码出现(存在所有候选码内属性数均大于等于2的情况)

    展开全文
  • 请问候选码和主属性有什么区别?我看了以下内容后仍然不好区分。 [img=https://img-bbs.csdn.net/upload/201502/20/1424438326_142877.png][/img] [img=...
  • 因为关系数据库中不允许有重复元祖出现 所以系统会自动把他们都过滤掉? 但是我用Oracle测试了一下,发现不是那么回事儿啊 难道是因为关系数据库理论是这么设计的,但是Oracle出于方便用户或是其他的 什么原因...
  • 数据库一对多、多对多关系

    万次阅读 多人点赞 2018-01-10 15:54:10
    数据库一对多、多对多关系  本来数据库一对多、多对多关系并不复杂,但是最近在理解的时候感觉又感觉多了写新意,所以现在在来总结一下吧 、首先给出三种关系的实例 1、一关系实例 ...
  • 关系数据库设计理论

    千次阅读 2018-07-11 18:32:27
    设计个好的关系数据库系统,关键是要设计个好的数据库模式(数据库逻辑设计问题) 数据库逻辑设计主要解决的问题 关系数据库应该组织成几个关系模式 关系模式包括哪些属性 “不好”的数据库设计 ...
  • 关系数据库与非关系数据库详细比较

    千次阅读 多人点赞 2018-11-12 11:06:02
    2.非关系数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过个对象自身的属性来决定。 3.非关系数据库中,我们查询条数据,结果出来个数组,关系数据库中,查询条数据结果是...
  • 数据库 - 关系数据库标准语言SQL

    千次阅读 2015-05-05 09:57:12
    SQL是个通用的、功能极强的关系数据库语言SQL特点1.综合统一 集数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)功能于一体。 可以独立完成数据库生命周期的全部活动: 定义关系模式,插入...
  • 数据库通常分为层次式数据库、网络式数据库关系数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。  1.数据结构模型  (1)数据结构  所谓数据结构是指数据的组织形式或数据之间的联系。...
  • 关系数据库设计核心

    千次阅读 2020-04-10 16:32:32
    1、设计个合适的关系数据库系统的关键是关系数据库模式的设计,即应构造几个关系模式, 个模式有哪些属性,怎样将这些相互关联的关系模式组建成个适合的关系模型,关系数据库 的设计必须关系数据库设计理论...
  • 关系数据库中实现继承

    千次阅读 2014-01-02 14:53:56
    关系数据库中实现继承 在将对象保存到关系数据库中时,继承的概念发生几个有趣的问题。(请参阅参考资料的 "Building Object Applications That Work"。)问题从根本上归结为解释如何在您的持久模型组织...
  • 对象关系数据库

    千次阅读 2014-05-30 11:23:53
    对象-关系数据库正是把面向对象方法学与关系数据库系统技术相结合的产物。 按照“第三代数据库系统宣言”的文章的思想,个面向对象数据库系统(OODBS)必须满足两个条件: (1)支持统一核心的面向对象数据模型; ...
  • 数据库之关系数据库的关系运算

    千次阅读 多人点赞 2020-03-25 11:59:13
    我们学习关系运算的机理,对我们理解数据库查询操作非常重要 所以我们进行关系操作时很大程度上需要明白关系操作以及关系之间的逻辑 在我们进行数据库查询操作时,如何规范的使用数据库语言,如何进行选择时能够消除...
  • 关系数据库中闭包的求法

    千次阅读 2014-07-14 14:55:14
    闭包就是由属性直接或间接推导出的所有属性的集合,例如: f={a->b,b->c,a->d,e->f} 由a可直接得到b和d,间接得到c,则a的闭包就是{a,b,c,d} 以下是写的比较科学规范的顶记求解方法 设X和Y均为关系R的属性集的...
  • 数据库原理—关系数据库

    千次阅读 2020-09-05 19:58:37
    、思维导图: 二、基本知识点: ...(3)笛卡尔积:可表示一张二维表,表中每一个元组,表中每一个域 2、关系的定义 (1)关系: D1******Dn关系的行形成的个子集称为D1******Dn的个关
  • 原文:http://zwwwxy.blogchina.com/blog/article_81038.1423950.html 今天的数据处理方式呈现出明显的在表达层和数据层中间加入了个中间件层,方面以OR映射的方式把关系数据库中的结构化数据映射成内存的...
  • 关系数据库——关系数据语言

    千次阅读 多人点赞 2019-10-22 19:52:51
    结果为个集合,集合的每一个元素是个元组,元组的每一个分量来自不同的域。 基数:个域允许的不同取值个数。 笛卡尔积的基数:个域不同取值的个数的乘积,或者说元组的个数 关系:域的笛卡尔...
  • 目录 关系数据库 关系数据库关系模型的常用概念 优点 ...非关系数据库 ...非关系数据库: ...关系模型指的就是二维表格模型,而关系数据库就是由二维表及其之间的联系所组成的个数据组织。...
  • 最近因为要做个带CMS的系统,需要把数据库理论重新学习遍,因此买了本数据库系统基础教程来看,这系列文章作为对本次学习的个总结和概括。  1.1 数据库系统  数据库指由DBMS管理的数据和集合。  DBMS...
  • 关系数据库——基础

    千次阅读 多人点赞 2019-10-21 16:51:34
    数据:数据库中存储的基本对象,描述个事物的符号记录,数据和其语义不可分开说 数据库(DB):是长期储存在计算机内、有组织的、可共享的大量数据的集合。 数据库管理系统:个管理数据的软件 主要功能: ...
  • 关系数据库关系数据模型关系是个数学概念。 当把关系的概念引入到数据库系统作为数据模型的数据结构时,既有所限定和也有所扩充。 关系的数学定义例: 课程={离散,C语言…..},学生={张三,李四…..} 笛卡儿积...
  • 关系数据库与非关系数据库Nosql区别汇总

    千次阅读 多人点赞 2018-08-24 11:14:06
    目录 关系数据库与非关系数据库详细比较 关系数据库与非关系数据库优缺点对比 关于Nosql ...2.非关系数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过个对象自身的...
  • 关系数据库 、关系操作 1.基本关系操作: 关系模型常用的关系操作包括查询(query) 操作和插入(insert)、 删除(delete)、修改(update) 操作两大部分。 关系的查询表达能力很强,是关系操作最主要的部分。...
  • 数据库应用程序开发入门篇—— 关系数据库中的基本概念 写在前面:关系数据库是目前应用最广泛的的数据库,了解关系型数据库的基本概念,有助于应用开发。 1.关系数据库中基本概念 关系数据库,是建立在关系模型...
  • 数据库原理之关系数据库关系运算

    万次阅读 多人点赞 2018-12-06 10:10:31
    关系数据库关系运算 选择 投影 链接 除运算 选择运算 选择运算是从关系R选取使逻辑表达式F为 真的元组,是从行的角度进行的运算 投影运算 投影操作主要是从列的角度进行运算,但投影之后...
  • 关系数据库系列文章之到底什么是关系(

    千次阅读 多人点赞 2018-08-05 02:28:45
    在语言X如何实现Y,像这种具体的只是(know-how)可快速提高你的工作效率。但是一旦语言发生变化,这种知识就无法再使用。... 作为程序员,在日常的开发,我们避免不了的就要接触数据库这个概念,而关系...
  • 数据库设计中关系规范化理论总结

    千次阅读 多人点赞 2020-07-31 11:08:14
    关系数据库的设计过程,最重要的莫过于对数据库的逻辑设计,即针对个具体的问题,我们应该如何去构造个适合它的数据库模式。经过科学家的讨论研究,最终形成我们今天所看到的关系数据库的规范化理论。本文...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 482,600
精华内容 193,040
关键字:

关系数据库中每一属性必须