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

oracle 存储过程的基本语法 及注意事项

oracle存储过程的基本语法及注意事项oracle存储过程的基本语法1.基本结构CREATEORREPLACEPROCEDURE存储过程名字(参数1INNUMBER,参数2INNUMBER)IS变量1INTEGER:=0;变量2DATE;BEGINEND存储过程名字2.SELECTINTOSTATEMENT将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)例子:

系统 2019-08-12 09:30:14 2138

Oracle

Oracle中四种循环(GOTO、For、While、Loop)

ORACLE中的GOTO用法DECLARExnumber;BEGINx:=9;<>--循环点x:=x-1;DBMS_OUTPUT.PUT_LINE(X);IFX>0THENGOTOrepeat_loop;--当x的值小于9时,就goto到repeat_loopENDIF;END;/ORACLE中的FOR循环用法DECLAREXnumber;--声明变量BEGINx:=1;--给初值FORXINREVERSE1..10LOOP--r

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

Oracle

Oracle:impdb导入

最近有现场给我一份用expdp导出dmp文件,我用imp导入时,报错。因为导出dmp的数据库是11g,导入的数据库也是11g,但客户端安装的是10g,不能用imp导入;所以只能试着用impdp导入;一:在Linux环境下impdp导入:1.在操作系统上创建存放dmp文件目录>mkdirpathname2.在数据库层面,创建存放dmp文件对应目录CREATE[ORREPLACE]DIRECTORYdirectoryAS'pathname';3.对这个目录授权

系统 2019-08-12 01:55:07 2138

Oracle

oracle pl/sql 中的触发器

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

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

Oracle

mysql到oracle的移植

1.基本处理思路第一步:建与mysql同构的oracle数据库实例,并更新数据。1.期望将mysql导出成与oracle通用的sql语句,通过该语句进行更新。2.如果1不能做到,可先将数据库结构(表结构等)导出,在通过insert语句,或execl(限制:最多只能6w多条记录)进行导出、导入。第二步:一边设计新库,一边写老库到新库的同步程序。1.通过dblink进行连接,用存贮过程同步。2.对于数据量为千万级的表需要单独(特别)处理。2.mysql到ora

系统 2019-08-12 01:54:40 2138

Oracle

oracle自治事务

在触发器中操作触发此触发器的表,用pragmaautonomous_transaction选项。1、为何使用自治事务无法回滚的审计:一般情况下利用触发器禁止某些对表的更新等操作时,若记录日志,则触发器最后抛出异常时会造成日志回滚。利用自治事务可防止此点。避免变异表:即在触发器中操作触发此触发器的表在触发器中使用ddl写数据库:对数据库有写操作(insert、update、delete、create、alter、commit)的存储过程或函数是无法简单的用s

系统 2019-08-12 01:54:38 2138

Oracle

oracle中sql语句的优化

oracle中sql语句的优化一、执行顺序及优化细则1.表名顺序优化(1)基础表放下面,当两表进行关联时数据量少的表的表名放右边表或视图:Student_info(30000条数据)Description_info(30条数据)select*fromdescription_infodi,student_infosi--学生信息表wheresi.student_id=di.lookup_code(+)anddi.lookup_type(+)='STUDENT

系统 2019-08-12 01:54:30 2138

Oracle

卸载Oracle步骤

卸载Oracle步骤:1.停止所有与ORACLE相关的服务。2.使用OUI(OracleUniversalInstaller)卸载Oracle软件。“开始”->“程序”->“Oracle-OraDb110g_home1|Oracleinstallationproduct|Universalinstaller.3.删除注册表内容。运行regedit命令,删除下面内容:HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE注册表键,删除此键。HK

系统 2019-08-12 01:53:36 2138

Oracle

Oracle ASM for linx as 4 x86-64 创建过程

OracleASMforlinxas4x86-64创建过程1、划分区Disk/dev/sdb:5368MB,5368709120bytes255heads,63sectors/track,652cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sdb11499400818683Linux/dev/sdb250058569079583Lin

系统 2019-08-12 01:53:33 2138

Oracle

Oracle ACL(Access Control List)

在oralce11g中假如你想获取server的ip或者hostname,执行如下语句SELECTutl_inaddr.get_host_addressFROMdual;//获取IPSELECTutl_inaddr.get_host_nameFROMdual;//获取host名字如果在oracle9i中能够正常执行,但在11g中你可能会得到一个莫名其妙的错误提示:ORA-24247:networkaccessdeniedbyaccesscontrollis

系统 2019-08-12 01:53:13 2138

Oracle

Oracle程序包

程序包由两部分构成:规范(specification)和主体(body)。创建表createtablePEOPLE(IDNUMBERprimarykeynotnull,NAMENVARCHAR2(20)notnull,STATUSNVARCHAR2(3))insertintopeople(id,name,status)values(1,'福康','CLX');insertintopeople(id,name,status)values(2,'陆晓','ac

系统 2019-08-12 01:52:52 2138

Oracle

oracle当需要commit

今天oracle的SQLplus运行该删除和查询操作,然后PL/SQL还运行查询。相同的句子,结果是不一样的。我郁闷很大,然后,突然想到这可能对双方造成由数据不一致,为什么不一致呢。就是没用commit,在网上查了一下,大概是这样说的:DML语言,比方update,delete,insert等改动表中数据的须要commit;DDL语言,比方create,drop等改变表结构的。就不须要写commit(由于内部隐藏了commit);DDL数据定义语言:cre

系统 2019-08-12 01:52:45 2138

Oracle

oracle 存储过程的基本语法

1.基本结构CREATEORREPLACEPROCEDURE存储过程名字(参数1INNUMBER,参数2INNUMBER)IS变量1INTEGER:=0;变量2DATE;BEGINEND存储过程名字2.SELECTINTOSTATEMENT将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)例子:BEGINSELECTcol1,col2into变量1,变量2FROM

系统 2019-08-12 01:33:59 2138

Oracle

Oracle字符集问题

Oracle字符集问题一.引言ORACLE数据库字符集,即Oracle全球化支持(GlobalizationSupport),或即国家语言支持(NLS)其作用是用本国语言和格式来存储、处理和检索数据。利用全球化支持,ORACLE为用户提供自己熟悉的数据库母语环境,诸如日期格式、数字格式和存储序列等。Oracle可以支持多种语言及字符集,其中oracle8i支持48种语言、76个国家地域、229种字符集,而oracle9i则支持57种语言、88个国家地域、2

系统 2019-08-29 23:26:17 2137

Oracle

Oracle 利用 rowid 提升 update 性能

关于ROWID的介绍参考我的Blog:OracleRowid介绍http://blog.csdn.net/tianlesoftware/archive/2009/12/16/5020718.aspx关于大表Update的一个讨论,参考itpub:http://www.itpub.net/viewthread.php?tid=1052077一.在虚拟机上使用rowid进行update测试使用rowid进行update能提高速度,是因为通过rowid能够迅速的

系统 2019-08-29 23:00:27 2137