精华内容
下载资源
问答
  • 数据库,空间,及数据文件关系密切,但同时有很多区别: 一个Oracle数据库是由一个或多个空间(tablespace)的逻辑存储单位构成的,这些空间共同来存储数据库的数据 Oracle数据库的每个空间由一个或多个...
    数据库,表空间,及数据文件关系密切,但同时又有很多区别:
    
    • 一个Oracle数据库是由一个或多个表空间(tablespace)的逻辑存储单位构成的,这些表空间共同来存储数据库的数据
    • Oracle数据库的每个表空间由一个或多个被称为数据文件(datafile)的物理文件构成,这些文件由Oracle所在的操作系统管理。
    • 数据库的数据实际存储在构成各个表空间的数据文件中。例如,一个最简单的Oracle数据库至少包含一个表空间及一个数据文件。再例如,一个数据库可能含有三个表空间,每个表空间由两个数据文件构成(即总共有六个数据文件)。
    展开全文
  • 数据表管理数据表基本概念主键:表中一列或者多列组合的,能够唯一的标识表中的每一行,一个表只能有一个主键,多列组合当主键称为复合主键。外键:相对应于主键而言。一个表中可以有多个外键。标识列:叫做自动...

    数据表管理

    数据表基本概念

    主键

    :表中一列或者多列组合的,能够唯一的标识表中的每一行,一个表只能有一个主键,多列组合当主键称为复合主键。

    外键

    :相对应于主键而言。一个表中可以有多个外键。

    标识列:

    又叫做自动增长列或者自动编号,本身没有具体的含义只是用来标识不同的实体。
    - 标识列用来区分不同的实体
    - 定义成标识列时,需要指定标识种子和标识增量,默认值都是1
    - 标识列通常也被定义为主键
    - 定义为标识列的列必须是整型
    - 标识列的数据是自动增加的,不能手动的为标识列插入值。

    数据类型

    这里写图片描述
    这里写图片描述
    这里写图片描述

    视图下创建表


    右键表,新建。
    当字段名字为关键字时,自动添加中括号。
    这里写图片描述

    SQL语句创建表

    USE E_Market--选择数据库
    GO
    CREATE TABLE CommoditySort--CREATE TABLE 表名
    (
        SortId int IDENTITY(1,1)NOT NULL,--代表的意思 :字段名 数据类型 标识列自动增长(标识种子,每次增长) 不为空
        SortName varchar(50)NOT NULL
    )
    GO

    约束的类型

    数据完整性:要求数据具有准确性和可靠性。

    实体完整性:表中的每一行都叫做一个实体,要求表中的所有的行唯一。例如:不能有相同的两个信息被录入。
    约束方法:唯一约束,主键约束,标识列。

    域完整性约束:保证列值符合规定要求。例如:密码长度至少6位。
    约束方法:限制数据类型,检查约束,外键约束,默认值,非空约束。

    引用完整性约束:要求两表相同字段必须一致。引用完整性确保键值在所有表中一致。这样的一致性要求不能引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改。
    约束方法:主键约束

    主键约束:

    主键列不能为空,主键列唯一,只有主键列才能被作为其他表的外键所创建。
    右键选中的表,选择设计,然后选中相应的字段设置为主键,需要标识列就在下方属性选择。
    例如:将EmployeeNo设置为主键,标识种子从1001开始,每次增加1

    这里写图片描述

    外键约束:

    用于在两表之间建立关系,需要指定引用主表是哪一列。
    右键选择关系。添加,然后选择表和列规范,然后设置相对应的主键和外键。

    这里写图片描述

    唯一约束:

    要求该列的值必须是唯一的,允许未空,但只能有一个
    选中字段右键选择索引/键。选择添加,然后将类型改为唯一键,选择要使用唯一键的列。

    这里写图片描述

    默认约束:

    某列没有写值的话,有一个默认值

    这里写图片描述

    检查约束:

    通过逻辑表达式判断数据的有效性,用来限制某列或者多列取值的范围。

    右键选择check约束,然后输入表达式即可。

    这里写图片描述

    非空约束:

    要求该列不能为空值。

    例子:我们创建两个表,一个部门表,一个员工表。

    1.外键约束,我们将员工所属的部门设置为外键约束。有四个部门,当我们设置为5时,就会出错,因为外键只能引用主键表中有的内容。

    这里写图片描述
    这里写图片描述

    2.检查约束:当我们输入的年龄不符合要求时,报错。

    这里写图片描述

    注意:当我们录入完数据的时候,最后发现主键的值并不是连续的,这是因为当我们录入错误的时候,他已经取了一个值,我们更改错误的时候,他自动取下一个值。

    这里写图片描述

    使用SQL语句添加约束。

    这里写图片描述

    对E_Market数据库的UserInfo表添加约束

    USE E_Market--选择数据库
    GO
    ALTER TABLE UserInfo--选择表
    ADD CONSTRAINT PK_UserId Primary Key(UserId),--对UserId设置主键
        CONSTRAINT CK_UserPwd CHECK(LEN(UserPwd)>=6),--密码长度大于等于6
        CONSTRAINT CK_Gender CHECK(Gender=0 OR Gender=1),--值只能为01
        CONSTRAINT DK_Gender DEFAULT(0) FOR Gender,--默认值为0
        CONSTRAINT CK_Email CHECK(Email LIKE '%@%')--Email里要包含@
        GO

    添加外键约束:

    CONSTRAINT FK_UserId FOREIGN KEY(UserId) REFERENCES UserInfo(UserId)--引用UserInfo表中的UserId

    向已有数据的表中添加约束
    不检查已经存在的数据,对后加入的数据进行检查

    ALTER TABLE Employee WITH NOCHECK
    ADD CONSTRAINT CK_EmployeeId CHECK(LEN(EmployeeId)=18)
    GO

    删除约束

    视图删除:

    sql语句删除约束:

    这里写图片描述

    --删除Employee表中的主键
    ALTER TABLE Employee 
    DROP CONSTRAINT PK_UserId
    GO

    数据库关系图

    对特定的数据库表进行可视化管理与分析,一个数据库可以创建多个数据库关系图。

    (1)可以清楚的看到表之间的主外键引用关系
    (2)建立引用关系时,从主表的主键向子表的引用键拖动。
    (3)在设计状态下是从子表向主表建立关系,数据库关系图下则刚好相反。

    这里写图片描述

    删除数据表

    视图下删除表:要注意先删除没有被引用的表,否则会报错。

    sql语句删除表:

    USE Demo--选择数据库
    GO
    
    
    DROP TABLE Employee--DROP TABLE 表名
    DROP TABLE Post
    GO
    展开全文
  • 数据结构顺序概念

    2020-03-22 09:30:08
    顺序是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在...通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系...

    顺序表:
    顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。
    顺序表又可分为:

    1. 静态顺序表:使用定长数组存储。
    2. 动态顺序表:使用动态开辟的数组存储。

    顺序表分析:
    优点:
    便于随机访问查找

    缺点:
    不便于插⼊,删除(末尾插⼊或删除⽐较⽅便,但中间/头部的插入删除,时间复杂度为O(N))

    场景:
    需要⼤量访问元素,尾删,尾插较多时使⽤顺序表

    展开全文
  • 关系数据模型(一)关系域: 笛卡尔积 关系域D1, D2, …, Dn上的关系r是笛卡尔积D1x D2…xDn的任意子集。n个域上的关系称为n-元关系,“元”称目或度 关系的性质 1.关系是笛卡尔积的子集,即元组的集合,所以,...

    声明:最近在准备考试,故整理数据库笔记。

    关系数据模型(一)

    关系

    域:

    7e8f3f55d7e08ba314b96886c38ca009.png

    笛卡尔积

    6d038367bc18f0e4ec063beb83ed5fd9.png

    关系

    域D1, D2, …, Dn上的关系r是笛卡尔积D1x D2…xDn的任意子集。n个域上的关系称为n-元关系,“元”又称目或度

    关系的性质

    1.关系是笛卡尔积的子集,即元组的集合,所以,关系中行的次序不重要,且关系(表)中不能包含两个相同的元组(行)

    2.用二维表表示关系使得我们可以以任意列次序显示关系,或者说列的顺序不重要

    3.在关系数据库中,任何有意义的关系都要满足一定的约束条件,这些约束都是语义约束

    4.除了语义约束外,对关系的限制主要有两点: 第一,在关系数据库中,只考虑有限关系 第二,关系的每个属性都必须是原子的

    关系的码

    :设K是关系R的属性集,如果K能唯一地标识一个元组,而其真子集不能,则K是R的码

    超码:设K是R的码,K  X,则X是关系R的超

    主码:通常,当一个关系具有多个码时,应当选择其中的一个作为惟一识别关系元组的码,称为主码

    候选码:主码用于表示由多个码中选出的作为惟一识别关系元组的码,而所有的码又称候选码 码中的属性称为主属性,而不在任何码中出现的属性称为非主属性

    关系模式

    关系有型和值之分

    关系的值  关系就是具有特定类型的“变量”

     关系的值即关系在某一时刻的快照,又称关系实例

    关系的型  关系模式看作“类型”  关系的型用关系模式刻画

    c07351ff7f535c038be3427046524dda.png

    在实际的关系数据库中进行某个关系的定义时给出各个属性的数据类型、取值范围和完整性约束

    fd64d2b945aed4ed71033d669d24943d.png

    注意:D和DOM是定义表时才考虑的,目前还不用考虑属性之间的数据依赖F ,因此关系模式简记为R(A1 , A2, …,An),或者简写为R(U)

    从E-R模型到关系模型

    ER图向关系模式转换 包括:属性处理、实体集处理、联系集处理

    派生属性的处理:转换时我们忽略派生属性 复合属性的处理:忽略复合属性本身,而直接考虑它的成分属性 多值属性的处理:为每个多值属性M创建一个关系RM ①如果多值属性M是实体集E的属性,K是E的主码,则关系RM的属性由M和K组成。 ②如果多值属性M是联系集R的属性,并且R涉及实体集E1, …, En,它们的主码分别是K1, …, Kn,则关系RM的属性由M和K1, …, Kn组成

    4e7dfd19cf44258c29bbdb4d66145212.png

    实体集处理

    adab3bd7455353bf336dc3190717f42f.png

    168f69007d26280a8d5e53deb45fabc0.png

    联系集的处理 包括:联系是一对一的,则可以和任意一端 实体集转换得到的关系模式合并 联系是一对多的,则和多端实体集转换得到的关系模式合并 联系是多对多的,则该联系集转换成独立的关系模式

    例子:将某高校教学管理系统的E-R图换成关系模式。图中的有向边表示该实体处于一端,无向边表示该实体集处于多端。假设该E-R图中的多值复合属性Phones已经转换成如下关系模式: Phones (Phone#, Dno, Office)

    cca384287a87c50b8657fd0f0f3b1609.png

    强实体集得到如下关系模式:

    Departments(Dno, Dname) 
    Teachers(Tno, Tname, Sex, Birthday, Title)
     Students(Sno, Sname, Sex, Birthday, Enrollyear, Speciality)
     Courses(Cno, Cname, Period, Credit) 

    一对一和一对多联系的转换

    Departments(Dno, Dname, Dheadno) 
    Teachers(Tno, Tname, Sex, Birthday, Title, Dno)
     Students(Sno, Sname, Sex, Birthday, Enrollyear, Speciality, Dno) 

    多对多联系得到的关系模式 3个多对多联系集得到如下关系模式:

    Teaches (Tno, Cno) 
    SC(Sno, Cno, Grade) 
    Evalues (Sno, Tno, Cno, Escore)

    合并后得到的关系模式

     Departments(Dno, Dname, Dheadno) 
    Teachers(Tno, Tname, Sex, Birthday, Title, Dno)
     Students(Sno, Sname, Sex, Birthday, Enrollyear, Speciality, Dno) 
    Courses(Cno, Cname, Period, Credit) 
    Teaches (Tno, Cno) 
    SC(Sno, Cno, Grade) 
    Evalues (Sno, Tno, Cno, Escore)
     Phones (Phone#, Dno, Office)
    展开全文
  • 数据结构之:哈希

    2020-05-29 01:00:16
    哈希表又称为散列表,哈希表是一种重要的数据结构,像java中的HashMap,HashSet、HashTable等等都是基于哈希表创建的集合类容器。像这些容器它的优势就是查找效率高,因此我们知道,哈希表其实是为了提高数据查找效率...
  • 关系数据模型(一)关系域: 笛卡尔积 关系域D1, D2, …, Dn上的关系r是笛卡尔积D1x D2…xDn的任意子集。n个域上的关系称为n-元关系,“元”称目或度 关系的性质 1.关系是笛卡尔积的子集,即元组的集合,所以,...
  • scala数据结构-Hash

    2020-07-20 23:39:45
    这里对应关系f称为散列函数,又称为hash函数,采用散列技术将记录存储在一块连续存储空间中,这块连续存储空间称为散列表或hash hash就是把key通过一个固定的算法函数(哈希函数)转换成一个整形数字,然后将该数字与...
  • 哈希表又称为散列表,是一种直接计算记录存放地址的方法,在数据元素的关键码与存储位置之间直接建立了映射。 采用哈希表查找的时间复杂度为O(1)。 哈希函数: 哈希函数是在关键字与记录的存储地址之间建立起的一种...
  • 数据血缘也称为数据血统或谱系,是来描述数据的来源和派生关系数据来源是数据科学的关键,也是被公认为数据信任的核心的部分。说白了就是这个数据是怎么来的,经过了哪些过程或阶段,从哪些,哪些字段计算得来的...
  • 单链表又称为单向列表,该链表的访问顺序是单向的,由于链表中各元素是分散存储的,所以为了能够体现出元素之间的逻辑关系,在单链表中每个数据元素在存储的同时,要配备一个指针,这些配备有指针的结构我们会统称为...
  • 数据结构之哈希

    2020-10-16 13:03:50
    我们将这种对应关系f成为散列函数,称哈希(Hash)函数,采用散列技术将记录存储在一块连续的存储 空间中,这块连续的存储空间称为散列表或哈希(Hash table) 2.散列表的查找步骤: ① 在存储的时候,通过散列...
  • 每个数据表又可以看作一个小的集合,表中的数据为该集合的元素。 如果让我们根据项目设计一个关系数据库,来存储项目数据,我们该如何设计一个冗余小,结构合理的数据库呢? 为了建立冗余较小、结构合理的数据库,...
  • 在数据库中有一类用于保存中间计算结果的物理,通常被称为“中间”。中间主要跟 OLAP(在线联机分析)业务有关,产生的原因主要有以下几方面。 中间来源 1. 计算逻辑复杂 在 OLAP(报表或查询)业务中,...
  • 上面的映射关系,在哈希中,上述对应过程就称为hashing。A中元素a对应B中元素b,a称之为键值(key), b被称之为a的hash值(hash value)。哈希函数映射在数学上相当于一个函数f(x):A->B;哈希的核心就是哈希...
  • 】1.1 哈希表哈希表又称散列表,基本思想是:以数据表中的每个记录的关键字 K 为自变量,通过一种函数 H ( k )计算出函数值。把这个值解释为一块连续存储空间的单元地址,将该记录存储到这个单元中。在此称为函数 H ...
  • 数据和表格的关系

    2019-08-26 20:10:22
    表格,又称为表,既是一种可视化交流模式,又是一种组织整理数据的手段。 比如,一系列的学生成绩信息,想让他们变得更加直观清晰,就可以将他们整理成一个表格,在表格中显示每个学生的考试成绩的数据信息。 图1 ...
  •   哈希表又称散列表:是根据关键字的值直接访问元素存储位置的存储结构。也就是说,在元素的存储地址和它的关键字之间建立的一个确定的对应关系H,使每个关键字和一个唯一的存储位置向对应。   散列表既是一种...
  • 数据结构的一些讲解,供学习...因为内存中的地址空间是线性的,因此,用物理上的相邻实现数据元素之间的逻辑相邻关系既是简单自然的。   将数据存储区data和指针last封装成一个结构体作为顺序的类型 struct L
  •  关系模型以二维表结构来表示实体与实体之间的联系,它是以关系数学理论为基础的,每个二维表又称为关系。  在关系模型中,操作的对象和结果都是二维表,关系模型是目前最流行的数据库模型。支持关系模型的...
  • 在说栈,队列以及链表之前,先来了解一下,顺序: 顺序:将元素顺序的存放在一块连续的存储区域内,元素之间是顺序关系,由...栈(stack):又称为堆栈.是一种数据容器,也可以实现数据的增删改查.它不同于列表的特点在于其只
  • 在数据库中有一类用于保存中间计算结果的物理,通常被称为“中间”。中间主要跟 OLAP(在线联机分析)业务有关,产生的原因主要有以下几方面。 中间来源 1. 计算逻辑复杂 在 OLAP(报表或查询)业务中,...
  • 我们把这种对应关系f称为散列函数,称哈希(Hash)函数,按这个思想,采用散列技术将记录存储在一块连续的存储空间中,这块连续存储空间成为散列表或哈希。关键字对应的记录存储位置我们成为散列地址。...
  • 什么是哈希? 哈希(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的...这里的对应关系f称为散列函数,又称为哈希(Hash函数),采用散列技术将记录存储在一块连续的存储空间中,这块...
  • 哈希又称为散列表,是根据关键字(Key value)而直接进行访问的数据结构。即:它通过把关键码值映射到中一个位置来访问记录,以加快查找的速度。 哈希函数:哈希的存储位置和关键字之间的对应关系(即:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 681
精华内容 272
关键字:

关系数据表又称为