摘要: 今天简单的总结一下PL/SQL中cursor(光标/游标)的用法。相信不少做开发或维护的DBA在找工作的时候,遇到过类似的面视问题:请简单的描述一下光标的类型,说一下普通光标和REF光标之间的区别,以及什么时候该正确应用哪一个? 这个题目,我着实难住了不少人,其实他们在具体开发的时候,也还是比较能够把握正确的光标的使用的,但就是说不出来,当然了,这与大家自身的沟流交通能力是有关系的。有的人不善于说,但做的却很好。扯的扯就走远了,最后唠叨一下:做技术这条路,能干不能说,或者说会干不会包装,路是走不"远"的。一、显式cursor显式是相对与隐式cursor而言的,就是有一个明确 阅读全文
posted @ 2012-03-27 00:06 wbzhao 阅读(318) 评论(0) 推荐(0) 编辑
摘要: SQL Server 2008中SQL应用系列--目录索引本文主要 涉及DDL触发器和登录触发器的应用实例。MicrosoftSQL Server 提供两种主要机制来强制使用业务规则和数据完整性:约束和触发器。触发器为特殊类型的存储过程,可在执行语言事件时自动生效。SQL Server 包括三种常规类型的触发器:DML 触发器、DDL 触发器和登录触发器。1、当数据库中发生数据操作语言 (DML) 事件时将调用 DML 触发器。DML 事件包括在指定表或视图中修改数据的 INSERT 语句、UPDATE 语句或 DELETE 语句。DML 触发器可以查询其他表,还可以包含复杂的 Transac 阅读全文
posted @ 2012-03-24 14:09 wbzhao 阅读(378) 评论(0) 推荐(0) 编辑
摘要: SQL Server 2008中SQL应用系列--目录索引在SQL Server中的加密由层次结构形式进行处理以提供多级别的安全。SQL Server包含两个用于加密数据的密钥类型。如下图:1、服务器主密钥(Service Master Key),位于层次结构的最顶端,并且在安装SQL Server时自动创建,用于加密系统数据、链接的服务器登录名以及数据库主密钥。在第一次通过SQL Server使用服务主密钥来加密证书、数据库主密钥或链接的服务器主密码时,服务主密钥会自动生成,并且使用SQL Server服务账户的Windows证书来生成它。如果必须改变SQL Server服务账号,微软建议使 阅读全文
posted @ 2012-03-24 14:08 wbzhao 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 导读:本文主要涉及EncryptByPassPhrase和DecryptByPassPhrase函数进行通行短语(PassPhrase)加密。前言: 在SQL Server 2005和SQL Server 2008之前。如果希望加密敏感数据,如财务信息、工资或身份证号,必须借助外部应用程序或算法。SQL Server 2005引入内建数据加密的能力,使用证书、密钥和系统函数的组合来完成。 与数字证书类似。SQL Server 证书包括公钥和私钥这一对密钥,它们都用来加密和解密数据。SQL Server也拥有创建非对称密钥和对称密钥对象的能力。非对称密钥(asymmetric key)与证书相似 阅读全文
posted @ 2012-03-24 14:07 wbzhao 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 把数据库打开到mount状态,生产库记住要先shutdown immediate,然后再startup mount,shutdown abort容易带来灾难性问题sys@HYJT> startup force mountORACLE instance started.Total System Global Area 184549376 bytesFixed Size 1218412 bytesVariable Size 67111060 bytesDatabase Buffers 113246208 bytesRedo Buffers 2973696 bytesDatabase moun 阅读全文
posted @ 2012-03-23 21:00 wbzhao 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 我们在使用sqlplus的时候可以通过help或?获得帮助信息,那么这些帮助信息是哪来的呢? 其实sqlplus的帮助信息从是数据库里表(system.help)里获取的。在$ORACLE_HOME/sqlplus/admin/help 目录下的helpus.sql文件里包含的帮助的信息,不过oracle默认带的帮助信息太少,自己可以通过其它途径获取更全的帮助脚本。那么我们自己如何来安装帮助呢?下面以系统自带的脚本为例来演示安装过程。所有用的sql脚本都保存在 $ORACLE_HOME/sqlplus/admin/help 目录下,包含了四个文件:helpbld.sql helpdrop.sq 阅读全文
posted @ 2012-03-23 20:59 wbzhao 阅读(615) 评论(0) 推荐(0) 编辑
摘要: 查看oracle数据库是否归档和修改归档模式(转)在ORACLE 数据库的开发环境和测试环境中,数据库的日志模式和自动归档模式一般都是不设置的,这样有利于系统应用的调整,也免的生成大量的归档日志文件将磁盘空间大量的消耗。但在系统上线,成为生产环境时,将其设置为日志模式并自动归档就相当重要了,因为,这是保证系统的安全性,有效预防灾难的重要措施。这样,通过定时备份数据库和在两次备份间隔之间的日志文件,可以有效的恢复这段时间的任何时间点的数据,可以在很多时候挽回或最大可能的减少数据丢失。一、 要使OARCLE 数据库进行日志的自动归档,需要做两方面的事情;1.是数据库日志模式的设置(可为Archiv 阅读全文
posted @ 2012-03-23 20:43 wbzhao 阅读(200) 评论(0) 推荐(0) 编辑
摘要: TRANSLATE ( 'char' , 'from_string' , 'to_string' )TRANSLATE返回将from_string中的每个字符替换为to_string中的相应字符以后的string。TRANSLATE是REPLACE所提供的功能的一个超集。如果from_string比to_string长,那么在from_string中而不在to_string中的额外字符将从char中被删除,因为它们没有相应的替换字符。to_string不能为空。Oracle将空字符串解释为NULL,并且如果TRANSLATE中的任何参数为NULL 阅读全文
posted @ 2012-03-21 11:41 wbzhao 阅读(258) 评论(0) 推荐(0) 编辑
摘要: Oracle数据库的初始化参数,主要来源于两个Oracle内部数据字典表:X$KSPPCV和X$KSPPI通常我们查询的V$Parameter视图或使用show parameter命令都是就来源于这两个系统表的,但通过这两种方式不能查询隐含参数.X$KSPPCV用以记录当前的设置的值,及是否使用了缺省值等信息,X$KSPPI则是一个基础表,用于记录参数名、参数说明等简单的信息。需要注意的是INST_ID字段,在Rac环境中用以确定参数所属的实例。可以使用如下脚本,查询当前实例的隐含参数:selectx.ksppinmname,y.ksppstvlvalue,y.ksppstdfisdefaul 阅读全文
posted @ 2012-03-21 11:00 wbzhao 阅读(1028) 评论(0) 推荐(0) 编辑
摘要: 作者:eygle |English Version 【转载时请以超链接形式标明文章出处和作者信息及本声明】链接:http://www.eygle.com/archives/2009/08/asmm_sga_tuning.html我们知道,在Oracle10g自动SGA管理模式下,SGA的相关参数不受手动控制。可是有些时候我们需要调整一下参数,如db_keep_cache_size,可能会遇到内存不足的错误:SQL> alter system set db_keep_cache_size=3584M scope=both sid='*';alter system set d 阅读全文
posted @ 2012-03-21 10:43 wbzhao 阅读(387) 评论(0) 推荐(0) 编辑