-
oracle 关系 表 视图_在Oracle数据库中,表和视图的区别与联系
2020-12-19 13:50:43就相当于我们在java中用集合list,或者数组存储我们的数据一样,表是一种二维结构,有行 有列,我们把相同类型的数据归为一列,比如每个人都有姓名,我们就把姓名归为一列,年龄归为一列,而行对应着每个人的数据,...一:什么是表:
表是作为oracle数据库存储数据的一种数据结构,就相当于我们在java中用集合list,或者数组存储我们的数据一样,表是一种二维结构,有行 有列,我们把相同类型的数据归为一列,比如每个人都有姓名,我们就把姓名归为一列,年龄归为一列,而行对应着每个人的数据,比如第一行是小红的姓名和年龄,第二行是小强的姓名和年龄。通过创建表然后向表中插入数据,最终实现对信息的存储。
二:什么是视图:
1、为什么要用视图?
举个例子,对于公司人员信息表上都有他们的薪资情况,财务再根据数据库里薪资来给每个人发放工资,所以工资这一栏是非常重要的,所以为了保证运转条理性,我们一般不能让数据库管理员看到这一栏的,毕竟管理员也是员工,对于这些敏感的信息,可能他看不到对大家都好。那么就衍生了该如何解决这个问题呢,有的人会说创建一个新的员工表,里面没有员工工资一栏,但是这个方法可是非常不明智的,因为当我们把原来的数据修改之后岂不是还要再新表上还要做一次修改,而且在新表上做了修改还要更新到主表,中间就会出现很多问题的,此时利用视图则是最合理的一个方法。
视图是从已存在表上抽出逻辑相关的数据集合,其本身和表的区别不大,都是对数据一种存储,只不过我们可以在已有表的基础上抽取一部分我们想要的数据。
2、我们修改视图之后会更新到基表中吗?
这个是肯定的,视图的意义就是对基表中的数据进行一部分提取后然后提供给其他人操作的,如果不能更新基表,那和新建一个表就毫无区别了,同时对于基表中数据的改变也能立马更新视图。
三:区别:
1、视图是已经编译好的sql语句。而表不是。
2、视图没有实际的物理记录。而表有。
3、表是内容,视图是窗口。
4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时对它进行修改,但视图只能有创建的语句来修改。
5、表是内模式,视图是外模式。
6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。
7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
8、视图的建立和删除只影响视图本身,不影响对应的基本表。
————————————————
版权声明:本文为CSDN博主「黄小小州」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
-
Mysql表的操作
2017-06-24 23:57:26二维表是同类实体的各种属性的集合 每个实体对应于表中的一行 在关系中称为元祖 相当于通常的一条记录 ; 表中的列表示属性 称为Field 相当于通常记录中的一个数据项 也叫列 字段 -----------------------------...我们说Mysql是一种关系型数据库 关系数据库最重要的概念就是表 表具有固定的列数和任意的行数 在数学上被称为关系,
二维表是同类实体的各种属性的集合 每个实体对应于表中的一行 在关系中称为元祖 相当于通常的一条记录 ;
表中的列表示属性 称为Field 相当于通常记录中的一个数据项 也叫列 字段
----------------------------------创建表
create table 表名 (
字段 类型 primary key auto_increment,
字段 类型 约束,
字段 类型 约束);
-----------------------------------查看表结构
desc 表名
-----------------------------------查看表的详细定义
show create table 表名
-----------------------------------删除表的
drop table 表名
-----------------------------------表的约束
非空约束 NOT NULL ;
列默认值 DEFAULT ;
唯一约束 UNIQUE;
主键约束 primary key ;
自增约束 AUTO _INCREMENT
外键约束 FOREIGE KEY
----------------------------------------添加一列
alter table 表名 add 字段名字 类型 约束;
----------------------------------------修改列的长度
alter table 表名 modify 要修改的字段名 类型 约束;
-----------------------------------------修改列的列名
alter table 表名 change 原来列名 新列名 类型 约束
----------------------------------------删除列的列名
alter table 表名 drop 列名
----------------------------------------修改表名
rename table 表名 to 新表名 -
数据库SQL---关系模型与关系代数
2020-04-30 14:12:022)笛卡尔积:对集合进行穷举外变一次内变一边,是一张二维表,表中的一行对应于一个元组,表中的一列的值来自于同一个域。 给定一组域D1,D2,...,Dn的笛卡尔积为D1×D2×...×Dn={(d1,d2,...,dn)|di€Di...1、关系数据库:表的集合,即关系的集合。
关系数据库=关系数据库模式(型)+关系数据库内容(值)
1)域:一组具有相同数据类型的值的集合。
2)笛卡尔积:对集合进行穷举外变一次内变一边,是一张二维表,表中的一行对应于一个元组,表中的一列的值来自于同一个域。
给定一组域D1,D2,...,Dn的笛卡尔积为D1×D2×...×Dn={(d1,d2,...,dn)|di€Di,i=1,2,...,n},其中集合中的每一个元素(d1,d2,...,dn)称为一个n元组,简称元组,元组中的每一个值di称为一个分量。
3)关系:笛卡尔积的子集,是一张二维表。
2、关系模式:简记为r(U)或r(D1,D2,...,Dn),其中r是关系的名字,U是属性名(D1,D2,...,Dn)的集合,n是关系的目(或度),当n=1时,称该关系为单元关系;当n=2时,称该关系为二元关系。
3、码
1)超码:属性集A可以唯一地标识关系r中的一个元组,则称属性A为关系r的超码。
2)全码:所有属性加在一起组成的候选码。
3)候选码:属性集A是关系r的超码,且属性集A的任意真子集都不能称为关系r的超码,则称属性集A为候选码。候选码是最小的超码,即最小属性组。
候选码的诸属性称为主属性,不能为空。不包含在任何候选码中的属性称为非码属性。
4)主码:若一个关系有多个候选码,则可选定其中一个候选码作为该关系的主码。
5)外码:F是关系r的一个属性,Ks是关系s的主码,若F与Ks相对应,则称F是关系r参照关系s的外码,简称F是关系r的外码,并称关系r为参照关系,关系s为被参照关系或目标关系。
4、关系完整性约束
关系模式中3类数据完整性约束:实体完整性、参照完整性、用户自定义完整性,其中前两种称为关系的两个不变性。
1)实体完整性:若属性集A是关系r的主码,则A不能取空值null,即主属性不能为空。
2)参照完整性:主键与外键的关系,外码的取值要么为空,要么为与之对应的主码的值。
3)用户自定义完整性:限制关系中某些属性的取值、限制关系中某些属性的取值之间需要满足一定的逻辑关系、限制关系中某属性集上的取值必须唯一。
5、关系模式中的关系操作:查询操作(最主要部分)、更新操作。
特点:集合操作方式,即操作的对象和结果都是集合。该操作方式也称为一次一集合方式,非关系数据模型的数据操作方式称为一次一记录方式。
6、传统的集合运算:将关系看作元组的集合,从关系的水平方向来进行的。
1)并υ:rυs,由属性r或属性s的所有元组组成,删去重复元组。
2)差−:r−s,由属性r的所有元素组成,从中删除与属性s相同的元组。
3)交∩:r∩s,由既属于r又属于s的所有元组组成,取相同的元组。
4)笛卡尔积×:r×s,关系r为n目元组的集合,关系s为m目元组的集合,结果为一个n+m目元组的集合,元组的前n列是关系r的一个元组,后m列是关系s的一个元组。
7、关系运算
1)选择σ:选出若干行。是一个逻辑表达式,取值为“真”或“假”。
2)投影Π:选出若干列,并从删除重复列。
3)连接(θ连接):从两个关系的笛卡尔积中选取连接属性间满足谓词θ的所有元组。
(1)等值连接:θ为等值比较谓词的连接运算。
(2)自然连接:特殊的等值连接,要求两个参与连接的关系具有公共的属性集,并在该属性集上进行等值连接,并去除重复列。
(3)外连接:把不能连接的元组也保留到结果关系中,关系r中不能连接的元组在结果中对应于关系s的属性全部置空。
(4)左外连接:把左关系中不能连接的元组保留到结果关系中。
(5)右外连接:把右关系中不能连接的元组保留到结果关系中。
4)除运算÷:求投影。
-
DB2数据库的逻辑结构和存储模型
2018-09-24 20:08:23表是二维结构,由行和列组成,表数据存放在表空间里,表空间是数据库的逻辑存储层,每个数据库可以包含多个表空间,每个表空间只能归属于一个数据库,所以数据库和表空间的关系是一对多。 所以DB2数据库的逻辑结构...
DB2数据库的逻辑结构和存储模型
在DB2中,一个数据库只能属于一个实例,一个实例可以对应多个数据库,所以实例和数据库的关系是一对多。
每个数据库是由一组对象组成的,如:表、视图、索引等。表是二维结构,由行和列组成,表数据存放在表空间里,表空间是数据库的逻辑存储层,每个数据库可以包含多个表空间,每个表空间只能归属于一个数据库,所以数据库和表空间的关系是一对多。
所以DB2数据库的逻辑结构分别为:实例–>数据库–>表空间–>表。
物理结构:
每个表空间由一个或多个容器组成,容器是映射到物理存储,容器可以是目录、文件、裸设备。每个容器只能属于一个表空间。根据数据管理方式,表空间可以分为系统管理(SMS)、数据库管理(DMS)DB2将表和索引存储在PAGE页里,page是db2中最小的物理分配单元,表中的每行数据只能包含在一页中,不能跨页。DB2支持的页大小分为:4K、8K、16K、32K四种,当DB2在读取数据的时候,不是按页读取,而是按照extent(块)读取,一个extent是由一组连续的页组成。如果一个表空间有多个容器,为了数据均衡的分布,所以在写数据的时候,按照循环的方式在各个容器里写数据,当一个容器中写满一个extent的时候,将开始在第二个容器继续写extent,周而复始,可以提高读写的效率。
每个表空间由一个或多个容器组成,表空间为逻辑层次中,而真正的数据是存放在容器中的,容器是由多个extent组成。
DB2的存储模型为:表空间---->容器---->extent(块)------>page(页)。
在V8中,当每个PAGE的大小为32K的时候,表空间最大只能容纳256G。
在V9开始,当每个PAGE的大小为32K的时候,表空间最大可以容纳16T。这就是大表空间(large)。从V9开始,默认创建的数据表空间均为大表空间。 -
计算机二级公共基础知识
2011-04-30 14:00:09由于数据元素在计算机存储空间中的位置关系可能与逻辑关系不同,因此,为了表示存放在计算机存储空间中的各数据元素之间的逻辑关系(即前后件关系),在数据的存储结构中,不仅要存放各数据元素的信息,还需要存放各... -
数据库基础
2017-05-09 19:29:00数据库:方便保存和管理数据) 1.Oracle数据库:关系型数据库:数据的呈现形式是一个二维表的形式 sid name sex 1 张三 男 2 李四 男 行:对应Java中具体的一个对象 列:对应Java中对象中的具体属性 ... -
SQLServer:什么是主键(PK)和外键(FK)?
2015-07-10 15:31:00一、主键与外键 1.主键是用来唯一地标识一行数据。...3.一张二维表上的外键可以引用另一张二维表上对应的主键。 二、数据库关系图 转载于:https://www.cnblogs.com/liqingwen/p/4635887.html... -
excel的使用
2012-11-25 17:06:01图9这时关闭编辑器,只要我们在相应的列中输入rrr(F2,B2),那么打完折后的金额就算出来了(如图10)。图107、矩阵计算Excel的强大计算功能,不但能够进行简单的四则运算,也可以进行数组、矩阵的计算。(1)数组... -
LINGO软件的学习
2009-08-08 22:36:50LINGO内置的建模语言是一种描述性语言,用它可以描述现实世界中的一些问题,然后再借助于LINGO求解器求解。因此,集属性的值一旦在模型中被确定,就不可能再更改。在LINGO中,只有在初始部分中给出的集属性值在以后... -
数据库系统基础:高级篇(第5版)(讲述数据库系统原理的经典教材)--详细书签版
2013-04-05 14:33:114.4.2 对应于类型层次的外延约束 72 4.5 复杂对象 72 4.5.1 非结构化复杂对象和类型可扩展性 73 4.5.2 结构化复杂对象 73 4.6 其他面向对象的概念 74 4.6.1 多态性(操作符重载) 74 4.6.2 ... -
你必须知道的495个C语言问题
2015-10-16 14:14:286.18 当我向一个接受指针的指针的函数传入二维数组的时候,编译器报错了。 6.19 我怎样编写接受编译时宽度未知的二维数组的函数? 6.20 我怎样在函数参数传递时混用静态和动态多维数组? 数组的大小 6.21 当数组... -
数据库知识点整理
2017-04-19 14:33:16数据库基本知识 ## 关系:一个关系对应一张二维表 ············ 对应 一个表 元组:表中的一行 ············对应 一行 属性:表中的一列,相当于记录中的一个字段 -
《你必须知道的495个C语言问题》
2010-03-20 16:41:18书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 《你必须知道的495个C语言问题》结构... -
你必须知道的495个C语言问题(高清版)
2010-03-31 16:24:091.9 如何生成“半全局变量”,就是那种只能被部分源文件中的部分函数访问的变量? 5 存储类型 6 1.10 同一个静态(static)函数或变量的所有声明都必须包含static存储类型吗? 6 1.11 extern在函数声明中是什么... -
基于AT89S52 单片的频率计
2010-01-04 08:47:37Protel DXP 是第一套完整的板卡级设计系统,真正实现在单个应用程序中的 集成。设计从一开始的目的就是为了支持整个设计过程,Protel DXP 让你可以 选择最适当的设计途径来按你想要的方式工作。Protel DXP PCB 线路... -
C语言程序设计标准教程
2009-05-22 18:43:58一般把存储器中的一个字节称为一个内存单元, 不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等, 在第二章中已有详细的介绍。为了正确地访问这些内存单元, 必须为每个内存单元编上号... -
Access 2000数据库系统设计(PDF)---031
2006-02-23 15:31:0421510.2.1 创建传统的单列等值连接 21610.2.2 为查询结果集指定排序次序 21810.2.3 使用表之间的间接关系创建查询 21910.2.4 创建多列等值连接和选择唯一值 22010.3 使用表中的查找字段 22210.3.1 用查阅向导添加... -
Access 2000数据库系统设计(PDF)---016
2006-02-23 15:31:0421510.2.1 创建传统的单列等值连接 21610.2.2 为查询结果集指定排序次序 21810.2.3 使用表之间的间接关系创建查询 21910.2.4 创建多列等值连接和选择唯一值 22010.3 使用表中的查找字段 22210.3.1 用查阅向导添加... -
Access 2000数据库系统设计(PDF)---011
2006-02-23 15:31:0421510.2.1 创建传统的单列等值连接 21610.2.2 为查询结果集指定排序次序 21810.2.3 使用表之间的间接关系创建查询 21910.2.4 创建多列等值连接和选择唯一值 22010.3 使用表中的查找字段 22210.3.1 用查阅向导添加... -
Access 2000数据库系统设计(PDF)---001
2006-02-23 15:31:0421510.2.1 创建传统的单列等值连接 21610.2.2 为查询结果集指定排序次序 21810.2.3 使用表之间的间接关系创建查询 21910.2.4 创建多列等值连接和选择 唯一值 22010.3 使用表中的查找字段 22210.3.1 用查阅向导添加... -
oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串
2017-05-06 20:26:523. 关系结构模型:关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。常见的有Oracle、mssql、mysql等 二、 主流数据库 数据库名 公司 特点 工作环境 mssql 微软 只能能运行在windows平台,... -
Excel公式与函数大辞典.宋翔(带书签高清文字版).pdf
2019-03-02 08:33:511.6.1 创建引用其他工作表中的数据的公式 28 1.6.2 创建引用其他工作簿中的数据的公式 29 1.6.3 创建对多个工作表中相同单元格区域的三维引用 30 1.6.4 更新跨工作簿引用的公式 31 1.7 审核公式 31 1.7.1 使用... -
数据结构(C++)有关练习题
2008-01-02 11:27:18内容及步骤: 1、 设有一个线性表(e0,e1,e2,e3,…,en-2,en-1)存放在一个一维数组A[arraySize]中的前n个数组元素位置。请编写一个函数将这个线性表原地逆置,即将数组的前n个原地址内容置换为(en-1,en-2,…,e3,... -
temp = X1**(i-j)*(X2**j) #矩阵直接乘相当于matlab中的点乘.* out = np.hstack((out, temp.reshape(-1,1))) return out 6、使用scipy的优化方法 梯度下降使用scipy中optimize中的fmin_bfgs函数 调用scipy中的...
-
[评审]UI标准 - Table
2020-12-31 23:53:07主要用于二维数据的展现。 继承关系 <pre><code> - Control - Table </code></pre> 主元素 <p><code>Table控件的主元素是一个<code><div>元素。 属性 <h3>{int} width 表格体的宽度,单位为px。默认自适应内容... -
php高级开发教程说明
2008-11-27 11:39:22同样,我们假定需要一个小脚本来列出某个目录中的所有文件,你能够很快地完成它,使 其能从事某一特定任务,在一个特定的目录列出所有文件,不必再担心它了—问题已解决, 可以转向其他任务,把你的程序抛在脑后。但... -
Reversing:逆向工程揭密
2010-06-21 17:11:16第二类是从没有源代码的程序出发,生成对应的源程序、系统结构以及相关设计原理和算法思想的文档等,亦即本书重点讨论的二进制逆向工程。 本书共有13章和三个附录,涵盖了逆向工程的基础知识、应用、开发和拓展的... -
网管教程 从入门到精通软件篇.txt
2010-04-25 22:43:49如果不带任何参数,chkdsk 将显示当前驱动器中的磁盘状态。 drive: 指定要 chkdsk 检查的驱动器。 /p 即使驱动器不在 chkdsk 的检查范围内,也执行彻底检查。该参数不对驱动器做任何更改。 /r 找到坏扇区并...
-
龙芯实训平台应用实战(希云)
-
oldprodbackup-wordpress:oldprodbackup wordpress网站的备份-源码
-
P1005 [NOIP2007 提高组] 矩阵取数游戏(区间dp+__int128)
-
朱老师c++课程第3部分-3.5STL的其他容器讲解
-
FTP 文件传输服务
-
每日一题:2.两数相加
-
以数据为中心的云中的用户控制的安全机制
-
PTA 基础编程题目集 7-38 数列求和-加强版 (20 分)
-
git-关联远程仓库
-
MSSQL·特性分析·列存储技术做实时分析
-
C++11 14 17 20 多线程从原理到线程池实战
-
元素周期表-three.js实战详解
-
LeetCode刷题(9. 回文数)
-
安卓数据库案例
-
mpsoc zcu104 上做hdmi 显示实验
-
【布道者】Linux极速入门
-
3分布式Git-维护项目
-
第6章-云数据库.pdf
-
自动释放数据库句柄和结果集(RAII机制)
-
NFS 网络文件系统