欢迎访问 水平网    今天是:2017年11月22日 注册 | 登录 | 订阅 | 收藏
推荐文章
热点文章
专题
JQuery框架
Prototype.js
HTML5

Oracle 10g列值掩码技术隐藏敏感数据

  Oracle的虚拟私有数据库特性(也称作细颗粒度存取控制)对诸如SELECT等数据管理语言DML语句提供行级安全性检查。   PL/SQL策略函数和某个数据表相关联,这个函数可以检查当前用户的上下文背景并添加查询中WHERE语句的条件(断言),一个用户或者应用可以这样来写: SELECT * FROM employees;   但是实际上oracle将会执行这样的语句:   SELECT * FROM employees   WHERE department_id = 60;   因此,只有在查寻范围之内的行(在department数据表中的前60行)才会被查询语句返回。利用oracle 10g中的新选项可以让oracle返回所有行,而不仅仅是被授权的行。然而,未被授权行...
类别:数据库 - ORACLE,阅读:350,更新:2014-05-19

列定义的顺序和列存储的顺序

今天在看管理员手册的时候,Oracle提到了索引组织表列的顺序问题。于是做了个测试验证了一下。 由于索引组织表是根据索引的格式存储的表,所以主键的键值列应该存储在前面,随后才是表中的其他列,下面建立一个索引组织表,将主键列放在后面: SQL> CREATE TABLE T_INDEX_ORG (NAME VARCHAR2(30), ID NUMBER PRIMARY KEY) 2 ORGANIZATION INDEX; 表已创建。 SQL> DESC T_INDEX_ORG 名称 是否为空? 类型 ----------------------------------------------------------------- -------- ---------------- NAME VARCH...
类别:数据库 - ORACLE,阅读:400,更新:2014-05-19

基于Oracle OCI的数据访问C语言接口ORADBI-开发技术

    ORADBI是我在Oracle OCI(Oracle 调用接口)基础上开发的,支持Oracle8i、9i、10g等数据库。根据Oracle公司的介绍:OCI是如此可靠,以至于Oracle数据库中的每一条SQL语句都通过OCI来执行。当应用程序开发人员需要面向Oracle数据库服务器的最强大的接口时,他们将调用 Oracle调用接口(OCI)。OCI提供了对所有Oracle数据库功能的最全面的访问。OCI API中包含了最新的性能、可伸缩性和安全性特性。     采用OCI的最大好处就是:它是最切近Oracle底层的技术,因此,效率是最高的。同时,它是跨平台的。因此,在我给出的ORADBI库,除了OCI之外,没有其他外...
类别:数据库 - ORACLE,阅读:403,更新:2014-05-19

Oracle9i自动分段空间管理改善分段存储

为了保持其最强大和最灵活数据库的地位,Oracle在最近发布的几个版本里一直都在创建新的机制来对表格和索引的存储进行简化和分块。从Oracle8i开始,Oracle开始在tablespace内部将对象管理进行自动化。第一个增强的地方原来叫做本地管理tablespace(或者简写作LMT)。在LMT里,Oracle将tablespace里的信息从数据字典的表格空间里移出去,而直接将其保存到tablespace自身里。这在Oracle9i里已经成为了一个事实的标准,因为它减轻了数据字典的负担。 表格空间的第二个主要增强的是自动分段空间管理(ASSM),它首次出现在Oracle9i里。有了ASSM,链接列表freelist被位图所取代,它是一个二进制的数组,能够迅速有效地管理存储扩...
类别:数据库 - ORACLE,阅读:391,更新:2014-05-19

Oracle大文本在ASP中存取问题的解决

一、关于ADO 在基于Client/Server结构的数据库环境中,通过OLE DB接口可以存取数据,但它定义的是低层COM接口,不仅不易使用,而且不能被VB,VBA,VBScript等高级编程工具访问。而使用ADO则可以很容易地使VB等编程语言直接访问数据(通过OLE DB接口)。ADO是基于面向对象方法的,ADO对象模型总共才包括六个对象,相对于数据访问对象(DAO)来说简单得多。因此实际中常常使用它来访问数据库。 二、ADO访问数据库实例 下面,我们以Oracle为例,使用VB6.0来访问其数据库中的存储过程。在此例中,我们首先在Oracle数据库上创建有两个存储过程,一个不带参数,另一个带有参数。然后,使用ADO...
类别:数据库 - ORACLE,阅读:400,更新:2014-05-19

用Oracle并行查询发挥多CPU的威力

  在一个单独的服务器中安装更多的CPU成为目前的一个趋势。使用对称多处理服务器(SMP)的情况下,一个Oracle服务器拥有8个、16个或32个CPU以及几吉比特RAM的SGA都不足为奇。   Oracle跟上了硬件发展的步伐,提供了很多面向多CPU的功能。从Oracle8i开始,Oracle在每个数据库函数中都实现了并行性,包括SQL访问(全表检索)、并行数据操作和并行恢复。对于Oracle专业版的挑战是为用户的数据库配置尽可能多的CPU。  在Oracle环境中实现并行性最好的方法之一是使用Oracle并行查询(OPQ)。我将讨论OPQ是如何工作的和怎样用它来提升大的全表检索的响应时间以及调用并行事务回滚等等。  使用OPQ  当...
类别:数据库 - ORACLE,阅读:359,更新:2014-05-19

SQL语句的优化方法

174. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=’CCBZZP’; 175. /*+FIRST_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化. 例如: SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=’CCBZZP’; 176. /*+CHOOSE*/ 表明如果数据字...
类别:数据库 - ORACLE,阅读:359,更新:2014-05-19

快速删除重复的记录

做项目的时候,一位同事导数据的时候,不小心把一个表中的数据全都搞重了,也就是说,这个表里所有的记录都有一条重复的。这个表的数据是千万级的,而且是生产系统。也就是说,不能把所有的记录都删除,而且必须快速的把重复记录删掉。 对此,总结了一下删除重复记录的方法,以及每种方法的优缺点。 为了陈诉方便,假设表名为Tbl,表中有三列col1,col2,col3,其中col1,col2是主键,并且,col1,col2上加了索引。 1、通过创建临时表 可以把数据先导入到一个临时表中,然后删除原表的数据,再把数据导回原表,SQL语句如下: creat table tbl_tmp (select distinct* from tbl);truncate table tbl;/...
类别:数据库 - ORACLE,阅读:372,更新:2014-05-19

Oracle中的时间应用

1、转换函数 与date操作关系最大的就是两个转换函数:to_date(),to_char() to_date() 作用将字符类型按一定格式转化为日期类型: 具体用法:to_date('2004-11-27','yyyy-mm-dd'),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。 如;to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') 将得到具体的时间 多种日期格式: YYYY:四位表示的年份  YYY,YY,Y:年份的最后三位、两位或一位,缺省为当前世纪  MM:01~12的月份编号  MONTH:九个字符表示的月份,右边用空格填补  MON:三位字符的月份缩写  WW:一年中的星期  D:星期中的第几天&nb...
类别:数据库 - ORACLE,阅读:418,更新:2014-05-19

利用悲观锁解决数据库死锁

这边讲述的数据库死锁是由于查询条件顺序不对而造成的一类,主要是两个线程在同时对一个数据库表进行操作时,出现了下列情况,假设一个数据库表内有5行数据,线程1需要对1-4行数据进行update操作,而线程2需要对2-5行数据进行update操作,但是由于操作的顺序调整的不正确,线程1是对数据行1,2,3,4这样的顺序操作,并且加入batch的,而线程2是对数据行5,4,3,2这样的顺序操作的,并且加入batch,于是锁就这样产生了: 当线程1的executeBatch进行批量update时,锁住了123行数据,开始操第4行数据时,此时线程二的executeBatch正当操作完第4行数据,准备操作第3行数据,而此时线程2则拿着4,5行数据的锁,并且不会释放。 于是线程1发现第4行...
类别:数据库 - ORACLE,阅读:316,更新:2014-05-19

Oracle数据库的备份及恢复策略研究

恢复丢失的数据库文件在很大程度上取决于所采用的备份策略。本文从恢复的灵活性出发,对Oracle8数据库的备份及恢复策略进行了探讨,并给出了Windows 2000环境下使备份过程自动化的脚本文件的项目开发实例。 引言   随着信息系统在各种商务活动中重要性的不断增强,维护系统数据的可用性已成为当前一个十分重要的课题。为了有效地保持健康的信息系统,必须采取一定的措施防止在由介质、操作系统、软件和其它事件导致重要数据库文件严重损坏的情况下影响RDBMS(关系数据库管理系统),进而影响信息系统的正常运行。这就需要在此类系统失败的情况履芄患笆薄⒂行У亟性帜鸦指础;指炊У氖菘馕募诤艽蟪潭壬先【鲇谒捎玫谋阜莶...
类别:数据库 - ORACLE,阅读:463,更新:2014-05-19

优化Oracle库表设计的若干方法

    前言   绝大多数的Oracle数据库性能问题都是由于数据库设计不合理造成的,只有少部分问题根植于Database Buffer、Share Pool、Redo Log Buffer等内存模块配置不合理,I/O争用,CPU争用等DBA职责范围上。所以除非是面对一个业已完成不可变更的系统,否则我们不应过多地将关注点投向内存、I/O、CPU等性能调整项目上,而应关注数据库表本身的设计是否合理,库表设计的合理性才是程序性能的真正执牛耳者。 合理的数据库设计需要考虑以下的方面:   ·业务数据以何种方式表达。如一个员工有多个Email,你可以在T_EMPLOYEE表中建立多个Email字段如email_1、email_2、...
类别:数据库 - ORACLE,阅读:408,更新:2014-05-19