第4章 数据库常用对象对象分析
- 格式:ppt
- 大小:1.35 MB
- 文档页数:92
Oracle数据库数据对象分析日期:2006-01-18 08:00 点击:Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。
对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。
表和视图Oracle中表是数据存储的基本结构。
ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大。
视图是一个或多个表中数据的逻辑表达式。
本文我们将讨论怎样创建和管理简单的表和视图。
管理表表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构。
用CREATE TABLE语句建立表,在建立表的同时,必须定义表名,列,以及列的数据类型和大小。
例如:这样我们就建立了一个名为products的表,关键词CREATE TABLE后紧跟的表名,然后定义了三列,同时规定了列的数据类型和大小。
在创建表的同时你可以规定表的完整性约束,也可以规定列的完整性约束,在列上普通的约束是NOT NULL,关于约束的讨论我们在以后进行。
在建立或更改表时,可以给表一个缺省值。
缺省值是在增加行时,增加的数据行中某一项值为null时,oracle即认为该值为缺省值。
下列数据字典视图提供表和表的列的信息:. DBA_TABLES. DBA_ALL_TABLES. USER_TABLES. USER_ALL_TABLES. ALL_TABLES. ALL_ALL_TABLES. DBA_TAB_COLUMNS. USER_TAB_COLUMNS. ALL_TAB_COLUMNS表的命名规则表名标识一个表,所以应尽可能在表名中描述表,oracle中表名或列名最长可以达30个字符串。
表名应该以字母开始,可以在表名中包含数字、下划线、#、$等。
从其它表中建立表可以使用查询从基于一个或多个表中建立表,表的列的数据类型和大小有查询结果决定。
Oracle数据库的常用对象介绍Oracle数据库常用对象介绍oracle数据的常用对象有user,table,sequence,index,view,procedure和function,trigger,接下来将一一介绍。
一、user用户此处将oracle与mysql进行对比说明1 oracle用户1.1 基本语法create user test01 identified by test01;-- 创建用户grant connect,resource to test01;-- 授权revoke connect from test01;-- 撤销权限alter user test01 identified by 123456;-- 修改密码drop user test01 cascade; -- 加上cascade则将用户连同其创建的东西全部删除1.2 权限1.2.1 权限分类:1)系统权限–对用户而言connect:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
resource:RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
dba:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
2) 实体权限–针对表或视图而言的select, update, insert, alter, index, delete, all //all包括所有权限,execute //执行存储过程权限2 Mysql用户1.1 基本语法grant all privileges on *.* to jack@'localhost' identified by "jack" with grant option;•ALL PRIVILEGES 是表示所有权限,你也可以使用select、update等权限。
第4章数据库安全性数据库知识点整理第4章数据库安全性了解计算机系统安全性问题数据库安全性问题威胁数据库安全性因素掌握TCSEC和CC标准的主要内容C2级DBMS、B1级DBMS的主要特征DBMS提供的安全措施⽤户⾝份鉴别、⾃主存取控制、强制存取控制技术视图技术和审计技术数据加密存储和加密传输使⽤SQL语⾔中的GRANT语句和REVOKE语句来实现⾃主存取控制知识点什么是数据库的安全性数据库的安全性是指保护数据库以防⽌不合法的使⽤所造成的数据泄露、更改或破坏举例说明对数据库安全性产⽣威胁的因素⾮授权⽤户对数据库的恶意存取和破坏数据库中重要或敏感的数据被泄露安全环境的脆弱性信息安全标准的发展历史,CC评估保证级划分的基本内容TCSEC/TDI 安全级别划分安全级别定义A1 验证设计(verified design)B3 安全域(security domains)B2 结构化保护(structural protection)B1 标记安全保护(labeled security protection)C2 受控的存取保护(controlled access protection)C1 ⾃主安全保护(discretionary security protection)D 最⼩保护(minimal protection)CC评估保证级(EAL)的划分评估保证级定义 TCSEC安全级别(近似相当)EAL1 功能测试(functionally tested)EAL2 结构测试(structurally tested) C1EAL3 系统地测试和检查(methodically tested and checked) C2EAL4 系统地设计、测试和复查(methodically designed,tested and reviewed) B1EAL5 半形式化设计和测试(semiformally designed and tested) B2EAL6 半形式化验证的设计和测试(semiformally verified design and tested) B3EAL7 形式化验证的设计和测试(formally verified design and tested) A1实现数据库安全性控制的常⽤⽅法和技术⽤户⾝份鉴别该⽅法由系统提供⼀定的⽅式让⽤户标识⾃⼰的名字或⾝份。
常见的数据库对象数据库是现代计算机科学领域中一个重要的概念,它是数据的集合,可被访问、管理、操作,并能被保持在一致状态。
数据库中包含了大量的数据,而这些数据并不是单纯的字符串或数字,而是组成数据的各种对象。
常见的数据库对象,包括如下:1. 表(table)表是数据库中最常见的对象之一。
表指的是一个包含一系列行和列的结构,它们组成了表格,每一行代表了一个记录,每一列包含了一种数据类型的属性。
表是数据库中最基本和最重要的数据组织单元,也是最基本的数据存储结构之一。
2. 视图(view)视图是对一个或多个基本表的查询结果的逻辑表示,可以看做是虚拟的表格。
视图并不真正的存在于数据库中,它只是一个根据查询语句动态生成的虚拟表格。
视图可以提供数据的安全性、可读性和简洁性等优势,同时能够减少多个查询所需的时间。
3. 索引(index)索引是帮助高效地检索数据库记录的重要手段。
索引是一种特殊的表格,其中包含了某个表格中的一组列和相应的行指针,通过索引可以提高数据库检索的速度,缩短了检索的响应时间。
4. 存储过程(stored procedure)存储过程是一种用来封装某一特定操作的代码块,并在后续的操作中被重复使用。
它类似于函数,但却执行一系列的 SQL 语句集合,用于完成某种特定的任务,存储过程可以在多个数据库应用中被调用。
5. 函数(function)函数是一种可重用的代码块,只不过用于完成的是返回单一值的一项任务。
函数可以在SQL语句中直接调用,是一个接受参数的命名参数,普遍应用于数据取值和字符串处理等操作。
6. 触发器(trigger)触发器是一种在数据库中自动执行的事件。
当某些特定的数据库事件发生时,触发器会被自动执行。
通常用于强制检查数据有效性和维护数据一致性,增加了数据库的数据安全性和可靠性。
约束是用来限制和保护数据完整性和一致性的一种方法。
约束可以限制数据类型、数据范围、唯一性、参照完整性、关联性等,确保了数据的正确性、完整性、有效性和一致性。
要想掌握好数据库的知识,就要从基层做起,首先要学习数据库的最基本知识,下文中将为大家讲解的数据库的九中数据库对象就是数据库的基本知识,比较适合数据库的初学者学习,本文中总结的数据库中的九种数据库对象是非常全面的,希望大家能够认真对待。
数据库对象是数据库的组成部分,常见的有以下几种:1.表(Table )数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row)和列(Column)组成的。
列由同类的信息组成,每列又称为一个字段,每列的标题称为字段名。
行包括了若干列信息项。
一行数据称为一个或一条记录,它表达有一定意义的信息组合。
一个数据库表由一条或多条记录组成,没有记录的表称为空表。
每个表中通常都有一个主关键字,用于惟一地确定一条记录。
2.索引(Index)索引是根据指定的数据库表列建立起来的顺序。
它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。
3.视图(View)视图看上去同表似乎一模一样,具有一组命名的字段和数据项,但它其实是一个虚拟的表,在数据库中并不实际存。
在视图是由查询数据库表产生的,它限制了用户能看到和修改的数据。
由此可见,视图可以用来控制用户对数据的访问,并能简化数据的显示,即通过视图只显示那些需要的数据信息。
4.图表(Diagram)图表其实就是数据库表之间的关系示意图。
利用它可以编辑表与表之间的关系。
5.缺省值(Default)缺省值是当在表中创建列或插入数据时,对没有指定其具体值的列或列数据项赋予事先设定好的值。
6.规则(Rule)规则是对数据库表中数据信息的限制。
它限定的是表的列。
7.触发器(Trigger)触发器是一个用户定义的SQL事务命令的集合。
当对一个表进行插入、更改、删除时,这组命令就会自动执行。
8.存储过程(Stored Procedure)存储过程是为完成特定的功能而汇集在一起的一组SQL 程序语句,经编译后存储在数据库中的SQL 程序。
常见的数据库对象以及所使用的数据字典一、数据库对象数据库对象是指在关系型数据库中存储和管理数据的基本单元。
常见的数据库对象包括表、视图、索引、存储过程、触发器等。
1. 表(Table)表是数据库中最基本的对象,用于存储数据。
表由行和列组成,每一行表示一个记录,每一列表示一个字段。
表的结构由字段名和字段类型定义,可以根据需求自定义字段的属性,如长度、约束条件等。
在数据字典中,表的信息包括表名、字段名、数据类型、约束条件、索引等。
2. 视图(View)视图是根据一个或多个表的数据创建的虚拟表,具有和物理表相同的功能。
通过定义视图,可以简化对多个表的复杂查询操作,并对外隐藏复杂的数据结构。
在数据字典中,视图的信息包括视图名、基表名、查询条件等。
3. 索引(Index)索引是数据库中用于提高查询性能的数据结构,用于加快数据的检索速度。
索引可以建立在表的一个或多个列上,可以是唯一索引或非唯一索引。
在数据字典中,索引的信息包括索引名、所属表名、索引类型、索引字段等。
4. 存储过程(Stored Procedure)存储过程是一组预定义的SQL语句集合,存储在数据库中,可被多个应用程序共享和调用。
存储过程通常用于完成复杂的业务逻辑操作,提高数据库的性能和安全性。
在数据字典中,存储过程的信息包括存储过程名、参数列表、返回值等。
5. 触发器(Trigger)触发器是数据库中的一种特殊对象,用于在特定的数据库操作(如插入、更新、删除)发生时自动触发执行一系列的SQL语句。
触发器通常用于实现数据的完整性约束和业务逻辑的处理。
在数据字典中,触发器的信息包括触发器名、所属表名、触发事件等。
二、数据字典数据字典是数据库中用于记录和管理数据库对象信息的元数据集合。
数据字典可以提供数据库对象的定义、属性、关系等详细信息,为数据库管理员、开发人员和用户提供参考和查询。
1. 表的数据字典表的数据字典记录了表的基本信息和结构定义。
包括表名、字段名、数据类型、长度、约束条件、索引等。
常见数据库对象(视图、索引、触发器、事务)⼀、视图1.1 视图的定义 视图是指计算机数据库中的视图,是⼀个虚拟表,其内容由查询结果来定义。
同真实的表⼀样,视图包含⼀系列带有名称的⾏和列数据。
但是,视图并不在数据库中以存储的数据值集形式存在。
⾏和列数据来⾃由定义视图的查询所引⽤的表,并且在引⽤视图时动态⽣成。
如果基表中的数据发⽣变化,则从视图中查询出的数据也随之变化。
1.2 视图的优点(1)定制⽤户数据 每个组织都有不同⾓⾊的⼯作⼈员,以销售公司为例,采购⼈员需要⼀些与采购有关的数据,⽽与采购⽆关的数据,对采购⼈员没有任何意义。
可以根据这⼀实际情况,专门为采购⼈员创建⼀个视图,以后采购⼈员在查询数据时,只需执⾏“select * from 采购视图”就可以了。
(2)简化数据操作 在使⽤查询时,很多时候需要使⽤聚合函数,同时还要显⽰其他字段的信息,可能还会关联到其他表,这时写的SQL语句会很长,如果这个多做频繁发⽣的话,就可以通过创建视图,简化数据来查询。
(3)细粒化的安全机制 因为视图是虚拟的,物理上是不存在的,它只是存储了数据的集合。
因此,可以将基表中重要的字段信息不通过视图提供给⽤户。
视图是动态的数据的集合,数据是随着基表的更新⽽更新的。
同时,⽤户不可以随意地更改和删除视图,以保证数据的安全性。
(4)合并分离的数据 随着社会的发展,公司的业务量不断地扩⼤。
为了管理⽅便,对于设有很多分公司的⼤公司,需要统⼀表的结构,从⽽定期查看各个分公司的业务情况。
使⽤union关键字,可以将各分公司的数据合并为⼀个视图,这样既⽅便⼜⾼效。
1.3 视图的创建和使⽤语法: create view view_name as select column_name(n) from table_name(n) where condition说明: view_name:视图名 column_name(n):视图中的字段列表,可以来源于多个表 table_name(n):表名,可以来源于多个表 condition:条件表达式,如果是多个表,则该表达式还包含标的连接条件⼆、索引2.1 索引的基本知识 2.1.1 理解索引 2.1.2 索引⼯作的原理 2.1.3 索引的作⽤ 2.1.4 索引的优缺点 优点: (1)⼤⼤加快了数据的检索速度。
第4章数据库安全及维护第4章数据库安全及维护本章学习⽬标数据库系统中由于⼤量数据集中存放,⽽且为许多⽤户直接共享,是宝贵的信息资源,所以安全性问题更为重要。
系统安全保护措施是否有效是数据库系统的主要性能指标之⼀。
本章将介绍以下⼏部分内容:●数据库安全性问题的基本概念和保证数据安全性的基本措施●数据库并发情况下的数据安全及处理⽅法●数据发⽣故障情况下的恢复技术4.1 数据库安全性4.1.1 基本概念数据库的安全性指保护数据库以防⽌不合法的使⽤所造成的数据泄露、更改或破坏。
安全性问题不是数据库系统所独有的,计算机系统都有这个问题,是因为在数据库系统中,⼤量数据集中存放,并为许多⽤户直接共享,是宝贵的信息资源,从⽽使安全性问题更为突出,系统安全保护措施是否有效是数据库系统的主要性能指标之⼀。
安全性问题和保密问题是密切相关的。
前者主要涉及数据的存取控制、修改和传播的技术⼿段;⽽后者在很⼤程度上是法律、政策、伦理、道德等问题。
这⼀节主要讨论安全性的⼀般概念和⽅法,然后介绍⼀些数据库系统的安全性措施。
4.1.2 安全措施的设置模型在计算机系统中,安全措施通常是⼀级⼀级层层设置的。
例如可以有如图4-1所⽰的计算机系统安全模型。
图4-1 计算机系统安全模型在如图4-1所⽰的安全模型中,⽤户在进⼊计算机系统时,⾸先根据⽤户输⼊的⽤户标识进⾏⾝份验证,只有合法的⽤户才准许登录计算机系统。
进⼊计算机系统后,DBMS对⽤户进⾏存取控制,只允许⽤户执⾏合法操作,操作系统同时允许⽤户进⾏安全操作。
数据最终可数据库技术及应⽤54以通过加⼊存取密码的⽅式存储到数据库中。
下⾯讨论最常见的⽤户标识与鉴别、存取控制等安全措施。
1.⽤户标识和鉴别⾸先,系统提供⼀定的⽅式让⽤户标识⾃⼰的名字或⾝份。
系统进⾏核实,通过鉴别后才提供机器使⽤权。
常⽤的⽅法有:●⽤⼀个⽤户名或者⽤户标识号来标明⽤户⾝份,系统鉴别此⽤户是否为合法⽤户。
若是,则可以进⼊下⼀步的核实;若不是,则不能使⽤计算机。