06 2012 档案
摘要:好处:1) WITH AS存储过程中使用,声明了就一定要用,不然会报错.2) 存储过程中如果有select 好像就一定得有into......3)复杂的查询会产生很大的sql,with as语法显示一个个中间结果,显得有条理些,可读性提高4) 前面的中间结果可以被语句中的select或后面的中间结果表引用,类似于一个范围仅限于本语句的临时表,在需要多次查询某中间结果时可以提升效率例子:with t as (select * from emp where depno=10)select * from t where empno=xxx再举个简单的例子with a as (select * fro
阅读全文
摘要:1. 概要说明数据库系统的显著特点需要保存大量历史记录,系统内存在许多历史记录表,因此常常出现系统运行一段时间,表记录数达到一定数量后,系统响应明显变慢的现象。为避免这种情况的出现,在有完备的数据库对象设计下,还在考虑到系统稳定情况下数据的变化情况,针对这种变化,在编写SQL语句必须遵循一定的优化规则,并制定完备的数据管理机制。2. 调优目的利用Oracle的内部优化器工作机制,合理改进查询语句的组织方式,提高数据库系统的响应速度,实现前端画面及平台应用的快速响应能力;同时统一开发人员的数据库开发编码的统一、规范。3. 调优原则充分利用表索引,避免进行全表扫描;充分利用SGA共享池缓存机制,提
阅读全文
摘要:Oracle over函数SQL code:sql over的作用及用法RANK ( ) OVER ( [query_partition_clause] order_by_clause )DENSE_RANK ( ) OVER ( [query_partition_clause] order_by_clause )可实现按指定的字段分组排序,对于相同分组字段的结果集进行排序,其中PARTITION BY 为分组字段,ORDER BY 指定排序字段over不能单独使用,要和分析函数:rank(),dense_rank(),row_number()等一起使用。其参数:over(partition
阅读全文
摘要:sys_connect_by_path(字段名, 2个字段之间的连接符号),注意这里的连接符号不要使用逗号,oracle会报错,如果一定要用,可以使用replace替换一下,方法如下 REPLACE(字段名,原字符,',')。还有,这个函数使用之前必须先建立一个树,否则无用。举个例子:目的:将num值相等的项目写成 seq1,seq2,seq3,……的形式(SELECT num,REPLACE(MAX(sql0), ';', ',')FROM (SELECT num, sys_connect_by_path(sql1, ';')
阅读全文
摘要:ORACLE获取DDL(Create Table)的几种常用的方法(转载)大体的分为三种方法:一、可以通过toad、plsql develop等第三方工具进行导出DLL操作,用这种办法的好处在于操作简单方便,但需要安装,下面简单介绍一下用这两个工具获得DLL语句的操作。二、直接通过EXP/IMP工具Oracle提供的最原始最实用的导入导出工具,我们大体上可以分为三种办法实现导出DDL。a. 通过imp指定indexfile参数,但这种办法不爽在于有每行前会有REM语法大体如下:exp userid=... tables=emp rows=n file=emp.dmpimp userid=...
阅读全文
摘要:先假设有这么一个表:createtableS_Depart(DepartIdINTnotnull,DepartNameNVARCHAR2(40)notnull,DepartOrderINTdefault0,constraintPK_S_DEPARTprimarykey(DepartId));在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。1、Create Sequence你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,CREATE SEQUENCE emp_sequenceINCREMENT B
阅读全文
摘要:oracle循环语句小结2011-11-28 15:35主要有以下五种循环:Exit When、Loop、While、For(普通循环)、For(游标循环),下面举例一一说明(均为存储过程)。1、Exit When循环:create or replace procedure proc_test_exit_when isi number;begini:=0;LOOPExit When(i>5);Dbms_Output.put_line(i);i:=i+1;END LOOP;end proc_test_exit_when;——————————————————–俺是分割线———————————
阅读全文
摘要:有道是,磨刀不误砍柴工。多了解一些底层的东西,对于Oracle开发、维护大有裨益。个人总结了一些Oracle数据类型集解,相信读者阅读了本文以后,Oracle数据库开发起来会事半功倍!在Oracle数据库中,每个关系表都由许多列组成。给每一列指派特定的数据类型来定义将在这个列中存储得数据类型。1、CHAR最多可以以固定长度的格式存储2000个字符或字节。默认指定为以字符形式进行存储,这个数据类型是固定长度的,并且当位数不够时,需要在其右边添加空格来补满。例如:CREATE TABLE test(name char(20))2、VARCHAR和VARCHAR2最多可以以可变长度来存储4000B,
阅读全文
摘要:DBMS_LOCK包的学习 学习一下DBMS_LOCK包的用法。这份材料的说明和举例都很详细了,好不容易才找到的,哈哈。General InformationSource{ORACLE_HOME}/rdbms/admin/dbmslock.sqlFirst Available7.3.4ConstantsNameDescriptionData TypeValuenl_modeNuLlINTEGER1ss_modeSub Shared: used on an aggregate object to indicate that share locks are being acquired on su
阅读全文
摘要:如果你要做循环的记数器,可以使用pls_integer. pls_interger,binary_integer,number中,pls_integer速度最快。转的别人的:Binary_Integer 与 Pls_Integer 都是整型类型. Binary_Integer类型变量值计算是由Oracle来执行,不会出现溢出,但是执行速度较慢,因为它是由Oracle模拟执行。而Pls_Integer的执行是由硬件即直接由CPU来运算,因而会出现溢出,但其执行速度较前者快许多。一、概述 在ORACLE8中定义了:标量(SCALAR)、复合(COMPOSITE)、引用(REFERENCE)和LO.
阅读全文
摘要:Testing and Debugging Procedures using SQL Developer 3.1http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/devdays2012/mod2_sqldev/mod2_sqldev.htmlTopic ListCollapse All TopicsHide All ImagesPrintOverviewPurposeThis tutorial covers how to execute a DDL script, review changes to the databas
阅读全文
摘要:一些基本的Oracle命令基本命令连接数据库C:>SQLPLUS /NOLOGSQL>CONN / AS SYSDBA1.Oracle 关闭SQL>SHUTDOWN (ABORT|IMMEDIATE|NORMAL)2.Oracle 启动SQL>STARTUP (REMOUNT|MOUNT|OPENT)3.SQL> HELP SHOWSHOW----Shows the value of a SQL*Plus system variable, or thecurrent SQL*Plus environment.SHO[W] optionwhere option re
阅读全文
摘要:问题:命令提示符cmd 中可以登录user,但是sql developer不可以。解决方法:用命令提示符修改密码,可以不知道原密码set oracle_sid=ora回车(ora为默认数据库实例名)sqlplus /nolog回车conn / as sysdba回车alter user system identified by manager;回车 (manager为新的密码)
阅读全文
摘要:今天在进行procedure执行的时候,用的是PL/SQL工具中的test,调试方法进行执行,因为有输入参数,但是报了个错:“note:debugging requires the debug connect session system privilege”.原因是用户权限不够,使用以下命令授予权限:GRANT debug any procedure, debug connect session TO username其实只需要授予debug connect session 就可以了,已经过测试。另外,如果查询某个角色包含哪些系统权限的话,可以查询:(1)、系统权限:select * fro
阅读全文
摘要:学习新技术会让人望而生畏,试问你现在已经在学习使用关系型数据库了吗?或许,你会一点点Access,但是假如你现在的老板或者老师希望你精通Oracle数据库,你会怎么办呢?别急,本文阐述了10个观点,对于刚刚学习Oracle的人来说,Oracle SQL Developer是最值得他们学习的工具。理由如下:1.完全免费无需任何启动资金和预算,学生也不需要任何费用。在原来的程序上进行免费升级,并且在我们的官方论坛上有一些免费的技术支持。2.随处运行Windows、OSX(Apple)、Unix、Linux。也不需要在你的实验室机器上启动Windows VM去运行Windows软件。3.谁都可以安装
阅读全文
摘要:Oracle临时表可以说是提高数据库处理性能的好方法,在没有必要存储时,只存储在Oracle临时表空间中。希望本文能对大家有所帮助。1 、前言目前所有使用 Oracle 作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。当然在 Oracle 中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一张或者某几张表关联之后得到的结果集非常小并且查询得到这个结果集的速度非常快,那么这个时候我考虑在 Oracle 中创建“临时表”。我对临时表的理解:在 Oracle 中创建一张表,
阅读全文
摘要:Stream 是Oracle 的消息队列(也叫Oracle Advanced Queue)技术的一种扩展应用。 Oracle 的消息队列是通过发布/订阅的方式来解决事件管理。流复制(Stream replication)只是基于它的一个数据共享技术,也可以被用作一个可灵活定制的高可用性方案。 它可以实现两个数据库之间数据库级,schema级,Table级的数据同步,并且这种同步可以是双向的。 Oracle Stream也是通过数据冗余来提高可用性,这一点和Data Guard 类型。 Oracle 高级复制(Oracle advanced Replication) 和流复制(Stream ..
阅读全文
摘要:Oracle的同义词总结: 从字面上理解就是别名的意思,和试图的功能类似。就是一种映射关系。 1.创建同义词语句: createpublicsynonymtable_nameforuser.table_name; 其中第一个user_table和第二个user_table可以不一样。 此外如果要创建一个远程的数据库上的某张表的同义词,需要先创建一个Database Link(数据库连接)来扩展访问,然后在使用如下语句创建数据库同义词:create synonym table_name fortable_name@DB_Link; 当然,你可能需要在user用户中给当前用户(user2...
阅读全文
摘要:Oracle中的Schema和User在产品detail拆分项目中,由于需要将原来的Product表拆分为Product、Product_detail两个表,数据库采取的方法是新建了一个Schema——alibaba1949。对schema不了解,现在也对其进行了一点学习。Oracle数据库中Schema和User的关系是一一对应的,也就是说一个Schema只对应一个User,一个User对应一个Schema。Oracle中,schema是与拥有此schema的user同名的。Schema可以翻译成“方案”。不同的schema之间它们没有直接的关系,不同的schema之间的表可以同名,也可以互
阅读全文
摘要:GoldenGate的复制原理和Quest公司的SharePlex产品一样,都是挖掘Oracle的日志(redo和归档)然后生成自己的队列文件,通过队列文件传输到目标端,目标端通过读取相应的队列文件在目标数据库中重演事务。可以想像,SharePlex产品未来将会面临来自于Oracle公司何等强大的压力。 GoldenGate的另外一个大的特点和优势是跨不同的数据库进行复制,目前支持的数据库有:Oracle、IBM DB2、SQL Server、Sybase ASE和Teradata(SharePlex只支持Oracle到Oracle的复制)等数据源。这一点被业界认为是Oracle收购GG最大.
阅读全文
摘要:------本文摘自http://wenku.baidu.com/view/cdd9810e4a7302768e993934.html在Internet上运作数据库经常会有这样的需求:把遍布全国各城市相似的数据库应用统一起来,一个节点的数据改变不仅体现在本地,还反映到远端。复制技术给用户提供了一种快速访问共享数据的办法。 前提条件 要准备2台测试用的机器,开始制作如下: 2台机器安装oracle10g,注意我的版本相同。 SID都是music1 1:安装及运行vnc。。。用于远程安装oracle 2:安装及运行 oracle10.2.... 完成以上步骤后,基本工作就算做完了,现在开始配置高级
阅读全文
posted @ 2012-06-12 16:51
*新*新*
摘要:摘自http://zhidao.baidu.com/question/84996258.html我装了英文版的WIN7,但是在安装的时候忘记选择中国区域了,导致现在安装一些中文程序的时候显示成乱码。我在控制面板里修改成中国了,也安装了一些中文字体,重启后还是乱码。。所以请教各位高手,怎么解决,我不想安装中文汉化包,要保留英文版的
阅读全文
摘要:After extractingsqldeveloper-2.1.1.64.45-no-jre.zipand executingsqldeveloper.exe,I received following error :Unable to create an instance of the Java Virtual MachineLocated at path:c:\java\jdk\jre\bin\client\jvm.dllOpen ide.conf file from <SQLDEVELOPER>/ide/bin/ide.confIn this file, change thi
阅读全文

浙公网安备 33010602011771号