- 军军小站|张军博客
拥有Oracle标签的文章
Oracle

oracle pl/sql 中的触发器

oracle11g将触发器分为5种:1.DDL触发器:当在数据库中创建、修改、重命名、删除对象时触发。2.DML或行级别触发器:当在表中插入、更新或删除数据时触发;可用于在值被改变前(before)进行审核、检查、保存、和替代。3.复合触发器:既是语句级又是行级触发器。在需要同时使用语句级触发器和行级触发器时可以使用复合触发器。4.insteadof触发器:用于停止DML语句的执行并重定向DML语句,即视图触发器。5.系统或数据库事件触发器:用于跟踪系统事

系统 2019-08-12 01:54:55 2077

Oracle

类型应用oracle如何显示毫秒?

每日一贴,今天的内容关键字为类型应用date类型只能准确到秒,要想准确到毫秒,须要用使timestamp类型。应用举例:举例1:selectto_char(systimestamp,'yyyy-mm-ddhh24:mi:ss.ff')fromdual;每日一道理时间好比一条小溪,它能招引我们奔向生活的海洋;时间如同一叶扁舟,它将帮助我们驶向理想的彼岸;时间犹如一支画笔,它会指点我们描绘人生的画卷。举例2:selectto_char(to_timestamp

系统 2019-08-12 01:54:51 2077

Oracle

Oracle触发器详细介绍

Oracle触发器详细介绍是特定事件出现的时候,自动执行的代码块。类似于存储过程,但是用户不能直接调用他们。功能:1、允许/限制对表的修改2、自动生成派生列,比如自增字段3、强制数据一致性4、提供审计和日志记录5、防止无效的事务处理6、启用复杂的业务逻辑开始createtriggerbiufer_employees_department_idbeforeinsertorupdateofdepartment_idonemployeesreferencingo

系统 2019-08-12 01:53:17 2077

Oracle

Oracle 11g新特性点评

Oracle11g新特性点评Oracle11g新特性简介Oracle11g现在已经正式推出。和她以前其他产品一样,新一代的oracle又将增加很多激动人心的新特性。IT168技术开发频道组织ITPUB数据库社区多位斑竹,发表系列技术点评文章。·点评Oracle11g新特性之分区·点评Oracle11g新特性之:数据压缩技术·点评Oracle11g新特性之统计信息收集·点评Oracle11g新特性之执行计划管理·点评Oracle11g新特性之自动内存管理·O

系统 2019-08-12 01:52:42 2077

Oracle

ORACLE 数据库名、实例名、ORACLE_SID的区别

数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)(记得还有网络服务名吧)在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名(db_domain)、服务名(service_name)、以及操作系统环境变量(ORACLE_SID)。这些都存在于同一个数据库中的标识,用于区分不同数据库的参数。一

系统 2019-08-12 01:52:13 2077

Oracle

ORACLE RMAN介绍

本地连接:$rmantarget/or$rmantarget/nocatalog远程连接:$rmantargetsys/sys@skyRMAN命令执行方式:1.单条命令执行2.使用run{}3.脚本执行RMANTARGET/@XXXX.RMANRMANTARGET/CMDFILE=XXXX.RMANRMANTARGET/LOG/HOME/ORACLE/RMAN.LOGAPPEND@XXXX.RMAN在RMAN中可以使用@XXXX.RMANRMAN命令类型:

系统 2019-08-12 01:52:07 2077

Oracle

Oracle 10 问题笔记

问题二:[oracle@localhostbin]$./sqlplusError6initializingSQL*PlusMessagefilesp1.msbnotfoundSP2-0750:YoumayneedtosetORACLE_HOMEtoyourOraclesoftwaredirectory问题产生原因:根据错误提示,可能是ORACLE_HOME环境变量设置有问题,是由自己粗心把环境变量设置错误引起.手动修改环境变量,问题解决.问题三:[orac

系统 2019-08-12 01:52:00 2077

Oracle

plsql连接oracle 64位数据库ORA-12514错误

今天帮小师妹还原数据库,删除表空间的时候把数据库搞坏了,plsql连接时报了ORA-12514:TNS:listenerdoesnotcurrentlyknowofservicerequestedinconnectdescriptor错误。反复修改监听文件也是没能得到解决。知道看到网上的解决方案:1.首先打开SQLPlus,sysassysdba;showparameter;startupopenhstestdb;发现了这两个错误ORA-00119:inv

系统 2019-08-12 01:51:27 2077

Oracle

[Oracle]高效的PL/SQL程序设计(五)--调用存储过

本系列文章导航[Oracle]高效的PL/SQL程序设计(一)--伪列ROWNUM使用技巧[Oracle]高效的PL/SQL程序设计(二)--标量子查询[Oracle]高效的PL/SQL程序设计(三)--Package的优点[Oracle]高效的PL/SQL程序设计(四)--批量处理[Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集[Oracle]高效的PL/SQL程序设计(六)--%ROWTYPE的使用Oracle支持通过ref游

系统 2019-08-12 09:29:56 2076

Oracle

Oracle闪回操作

Oracle闪回操作1.记录当前时间或SCN在数据库变动前记录时间或SCNSQL>selectto_char(sysdate,'YYYY-MM-DDHH24:mi:ss')fromdual;SQL>selectcurrent_scnfromv$database;2.开启闪回开启闪回需要数据库在归档模型下,所以首先需要开启归档。并且在mount状态下。首先查看是否开启闪回:SQL>selectflashback_onfromV$database;FLASHB

系统 2019-08-12 01:55:28 2076

Oracle

oracle 日期相减

oracle日期相减2012-02-1012:18--MONTHS_BETWEEN(date2,date1)给出date2-date1的月份SQL>selectmonths_between('19-12月-1999','19-3月-1999')mon_betweenfromdual;MON_BETWEEN-----------9SQL>selectmonths_between(to_date('2000.05.20','yyyy.mm.dd'),to_da

系统 2019-08-12 01:55:18 2076

Oracle

oracle查询、删除表中相同的数据

deleteFROMtablenameaWHERErowid>(SELECTmin(rowid)FROMtablenamebWHEREb.id=a.idandb.name=a.name);select*FROMtablenameaWHERErowid>(SELECTmin(rowid)FROMtablenamebWHEREb.id=a.idandb.name=a.name);oracle查询、删除表中相同的数据

系统 2019-08-12 01:55:02 2076

Oracle

oracle 超出表空间的空间限量解决方案

---ORA-01536:超出表空间'PUBRTS'/*表空间名*/的空间限量--错误原因:表空间配额已满,需要增加配额--方法一:(扩大限量)connectsystem/oracle;ALTERUSERpubr/*用户名*/QUOTA300MONpubrts/*表空间名*/;--方法二:(无限制限量)connectsystem/oracle;ALTERUSERpubr/*用户名*/QUOTAUNLIMITEDONpubrts/*表空间名*/;oracle

系统 2019-08-12 01:54:50 2076

Oracle

oracle队列

概念:高级队列(AdvancedQueue,简称AQ):高级队列是oracle的一种高级应用,它主要是表和触发器之间的组合而成的一种应用。其主要作用是在各应用系统中进行消息传递。目的:利用高级队列来实现消息在两个不同数据库之间的异步传输,满足业务系统的改造需求。基本环境:DB1:Oracle10gVersion10.2.0.4.0DB2:Oracle10gVersion10.2.0.4.0基本组成:发送方(DB1):Queuetype:决定发送消息的类型Q

系统 2019-08-12 01:54:44 2076

Oracle

Oracle sequence 的 order/noorder 选项

以前建序列时从来没注意过这个选项,总是认为序列就一定是有序的,今天被人问道才注意了一下。原来是在Oracle并行服务器上用到的,我理解是不是在并行情况下,如果序列是noorder的,则取序列号时,先发出命令的实例不一定能取到大的序列。在决大多数情况下是用不到的。CREATESEQUENCEcommandPURPOSE:Tocreateasequence.Asequenceisadatabaseobjectfromwhichmultipleusersmayg

系统 2019-08-12 01:54:15 2076