![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ORACLE
冯立彬
每天前进一步
展开
-
ORACLE使用中的常见、实用的问题
ORACLE使用中的常见、实用的问题摘要:这是原来用ORACLE的过程中记录下的一些问题,现在翻出来看看,还比较实用,如果以后再次遇到这样的问题的时候,就不用东找西找资料了。里面包括字段同步问题,单引号问题, EXECUTE IMMEDIATE的使用問題,replace使用問題,數據庫中字段為字符型時生成SQL語句的問題。1、 同步表记录问题有两张表t1,t2,有一个相同的字段原创 2007-10-24 11:22:00 · 9658 阅读 · 1 评论 -
百万数据查询优化技巧三十则
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select转载 2011-11-15 11:28:42 · 2953 阅读 · 3 评论 -
Oracle中In函数的使用
SQL: "IN" FunctionThe IN function helps reduce the need to use multiple OR conditions.译:IN函数有助于减少OR条件的复合使用。The syntax for the IN function is:译:IN函数的语法:SELECT columnsFROM tablesWHERE colu翻译 2010-01-01 04:47:00 · 64554 阅读 · 0 评论 -
关于Oracle SID存在解決办法
1、 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。 2、 开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除转载 2009-12-16 19:24:00 · 1645 阅读 · 0 评论 -
Oracle系统表大全
转自http://daniel-wuz.javaeye.com/blog/145925ORACLE系统表处理 1.取得指定用户的所有表名:Java代码 SELECT OWNER AS "对象所有者",OBJECT_NAME AS "表名",OBJECT_ID AS "对象编号" from dba_objects where owner = RAXNYB AND O转载 2009-04-10 10:22:00 · 5217 阅读 · 0 评论 -
ORACLE DUAL表详解
转自:http://hi.baidu.com/gyreg/blog/item/522f46ec37b3262f63d09ffe%2Ehtml1、DUAL表的用途Dual 是 Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中 --查看当前连接用户SQL> select user from dual;USER----------------------转载 2009-04-10 09:50:00 · 5480 阅读 · 0 评论 -
ORACLE中的自治事务
这是一个非常实用的功能,特别用在记录错误日志同时要回滚主事务的时候,我们在实际开发中就是这么用的,感觉还是很方便的。转载一篇详细的介绍,感谢原作者。 在基于低版本的ORACLE做一些项目的过程中,有时会遇到一些头疼的问题.,比如想在执行当前一个由多个DML组成的transaction(事务)时,为每一步DML记录一些信息到跟踪表中,由于事务的原子性,这些跟踪信息的提交将决定于主事务转载 2009-04-09 16:30:00 · 29534 阅读 · 0 评论 -
Using Create directory & UTL_FILE in Oracle
作者:eygle |English Version 【转载时请以超链接形式标明文章出处和作者信息及本声明】链接:http://www.eygle.com/archives/2005/04/using_create_di.html Create directory让我们可以在Oracle数据库中灵活的对文件进行读写操作,极大的提高了Oracle的易用性和可扩展性。其语法为:CREATE转载 2009-04-09 15:16:00 · 4575 阅读 · 1 评论 -
GLOBAL TEMPORARY TABLE
转自:http://tolywang.itpub.net/index.phpCREATE GLOBAL TEMPORARY TABLE TABLENAME (COL1 VARCHAR2(10),COL2 NUMBER) ON COMMIT PRESERVE(DELETE) ROWS ;这种临时表不占用表空间,而且不同的SESSION之间互相看不到对方的数据在会话结束后表中的数据自动清空,如转载 2008-06-04 21:02:00 · 19278 阅读 · 4 评论 -
数据挖掘
数据挖掘 什么是数据挖掘 数据挖掘(Data Mining),又称为数据库中的知识发现(Knowledge Discovery in Database, KDD),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,简单的说,数据挖掘就是从大量数据中提取或“挖掘”知识。转载 2007-11-12 13:47:00 · 7285 阅读 · 0 评论 -
SQL中通配符、转义符与"["号的使用
一、搜索通配符字符的说明可以搜索通配符字符。有两种方法可指定平常用作通配符的字符: 使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用: WHERE ColumnA LIKE %5/%% ESCAPE / 在上述 LIKE 子句中,前导和结尾转载 2007-11-01 22:39:00 · 7548 阅读 · 0 评论 -
Oracle/PLSQL: CURSOR FOR Loop
Oracle/PLSQL: CURSOR FOR LoopThe syntax for the CURSOR FOR Loop is:FOR record_index in cursor_nameLOOP {.statements.}END LOOP;You would use a CURSOR FOR Loop when you want to fetch and翻译 2007-10-31 16:57:00 · 13315 阅读 · 3 评论 -
ORACLE中的异常处理
1、ORALCE自带一些命名的系统异常,如下:Oracle Exception NameOracle ErrorExplanation中文注释DUP_VAL_ON_INDEXORA-00001You tried to execute an INSERT or UPDA原创 2009-04-09 15:49:00 · 8289 阅读 · 6 评论 -
ORACLE基本配置
ORACLE基本配置1、新建数据库在安装好ORACLE10.2后,建立数据库采用Database Configuration Assistant:前面几步都没有什么可说,到下面这一步的时候要注意一下:注意下面的用户,和你这里输入的密码,也就是说你连接该数据的时候,使用下面的这些用户、以及你在这里输入的密码,可以登陆到你建立的数据库,然后再用登陆进去的用户给该数据库新建用户并原创 2008-06-03 13:24:00 · 19292 阅读 · 0 评论 -
TRUNCATE和DELETE的几点区别
TRUNCATE和DELETE的几点区别 1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。 2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。 3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引原创 2007-10-24 11:43:00 · 6641 阅读 · 0 评论 -
数据操作语言DML及数据定义语言DDL的区别
数据操作语言DML及数据定义语言DDL的区别 1、数据操作语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。 在DML中,应用程序可以对数据库作插,删,改,排,检等五种操作: (1)插操作:把数据插入到数据库中指定的位置上去,如Append 是在数据库文件的末尾添加记录,而I原创 2007-10-24 11:57:00 · 11449 阅读 · 0 评论 -
PL/SQL错误过程、函数及解决方案笔记
PL/SQL错误过程、函数及解决方案笔记1、創建一個過程,利用cursor將一個表中的兩個字段的內容,以循環的方式放到另外一個表中。create or replaceprocedure copy_data_into_newTableasdeclare f_namevarchar(50); l_namevarchar(50); cursor原创 2007-10-24 12:05:00 · 6419 阅读 · 0 评论 -
用SQL语句把物品按名字分组后,只显示价格最低的那一条记录
如在MySQL中操作:create table table1(id int auto_increment primary key,name varchar(50),price float default 0);insert into table1(name,price) values('玉米',10);insert into table1(name,price) values('大原创 2007-10-31 14:34:00 · 8169 阅读 · 0 评论 -
在块中调用自定义的函数
函数:create or replace function my_funcreturn varchar2as begin return 'my_func is ok';end;调用方式:DECLARE result varchar2(20);beginresult:=my_func();dbms_output.put_line(resul原创 2009-04-08 16:41:00 · 4087 阅读 · 0 评论 -
Java获取Oracle存储过程中执行查询返回的结果集
通过JAVA调用ORACLE的存储过程,在ORACLE的存储过程内部做了一个查询在JAVA中获取该查询结果,这个和SYBASE、SQLSERVER的获取不一样,等我的下一篇文章我会介绍如何获取SYBASE、SQLSERVER在存储过程中执行了查询后如何获取其结果及存储过程的编写。在Oracle中需要返回查询结果集,必须将其以游标的形式返回,但游标又不是基础类型,因而不能够像返回字符类型一样直接原创 2010-01-07 15:41:00 · 7929 阅读 · 4 评论 -
Oracle中常见数据类型转换
Oracle中常见数据类型转换類型轉換函數 To | From | CHAR DATE NUMBER RAW ROWID ------------- |-----------------------------------------------------------原创 2007-10-24 12:18:00 · 7308 阅读 · 0 评论 -
实用SQL語句
实用SQL語句1、将一个表中的内容拷贝到另外一个表中insert into testT1(a1,b1,c1)select a,b,cfrom test;insert into testTselect *from test; (前提是兩個表的結構完全相同) insert into notebook(id,title,content)select noteboo原创 2007-10-24 12:23:00 · 6750 阅读 · 0 评论 -
JAVA连接ORACLE数据库
当然别忘了ORACLE的数据库驱动程序import java.sql.*;public class DBConn{ public static Connection getConnection() { //Oracle数据库连接 String ClassforName = "oracle.jdbc.driver.OracleDriver"; String原创 2007-10-24 10:03:00 · 6410 阅读 · 0 评论 -
在Oracle数据库中,用于数据备份的触发器及表结构
在Oracle数据库中,用于数据备份的触发器及表结构对当前的数据表的插入、删除、更新等进行记录,并把操作日期、操作者、原来数据、现在数据都作为备份,以便于在当前备出现问题的时候能够给以恢愎。当然,最好就是把备份表放在不同的磁盘上不同的数据库中:1、建立用于数据备份及操作记录的表:CREATE TABLE AUD_PRGAMD1(W_ROWID VARCHAR2(50), -原创 2007-10-24 11:03:00 · 7596 阅读 · 0 评论 -
PL/SQL学习笔记一
PL/SQL学习笔记一1、 PL/SQL的塊結構Declare /*Declare section-PL/SQL variables,types,cursors,and local subprograms go here. */Begin /* Executable section-procedu原创 2007-10-24 11:30:00 · 6566 阅读 · 0 评论 -
Oracle/PLSQL: While Loop
Oracle/PLSQL: While LoopThe syntax for the WHILE Loop is:WHILE conditionLOOP {.statements.}END LOOP;You would use a WHILE Loop when you are not sure how many times you will execute the翻译 2007-10-31 17:06:00 · 15825 阅读 · 0 评论 -
Oracle/PLSQL: WHERE CURRENT OF Statement
Oracle/PLSQL: WHERE CURRENT OF StatementIf you plan on updating or deleting records that have been referenced by a Select For Update statement, you can use the Where Current Of statement.译:如果翻译 2007-10-31 17:31:00 · 10781 阅读 · 0 评论 -
PLSQL中关于包的一个示例
PLSQL有类似于JAVA中的接口的包,包的好处就是方便管理与理解,并且对于学习JAVA的人来说,基本没有语方法上的障碍,一看就知道是这么个东西,也好理解。下面是一个示例:需要的表:create table test(tid number,tname varchar(50));-------------------------创建一个包---------------------原创 2007-07-27 09:25:00 · 7769 阅读 · 1 评论 -
Oracle、SQL Server、Access利用SQL语句进行高效果分页
在程序开发中,处理分页往往是比较频繁的事件,因为现在软件基本上都是与数据库进行挂钓的。但效率又是我们所追求的,如果是像原来那样把所有满足条件的记录全部都选择出来,再去进行分页处理,那么就会多多的浪费掉许多的系统处理时间。为了能够把效率提高,所以现在我们就只选择我们需要的数据,减少数据库的处理时间,以下就是常用SQL分页处理: 1、SQL Server、Access数据库 这都微原创 2007-07-20 21:43:00 · 7248 阅读 · 6 评论 -
利用cursor及fetch将一个表中符合条件的记录拷贝到另一个表中
晚上的时间,都是我自己的,我就好好的利用这个时间来学习学习ORACLE,去年学过的东西都忘得差不多了,现在趁机会还没有忘完之前拿起来。今天看了一下匿名块、函数、过程等,想起原来用过光标cursor及fetch,也是快忘得差不多了,那今天就来试试把一个表里面的数据拷贝到另外一个结构完全相同的表里面,不过,有一个条件就是原表的ID必须为5的倍数的才能够被插入,否则不取。在开始之前,还是先来复习一点东西原创 2007-07-18 20:59:00 · 7619 阅读 · 0 评论 -
PL/SQL入门例子
转贴地址:http://apple.upc.edu.cn/Article/ShowArticle.asp?ArticleID=493PL/SQL入门例子=================================================基本操作=================================================SQL>set serverou转载 2007-07-14 22:14:00 · 6657 阅读 · 0 评论 -
今天终于搞定ORACLE了
昨天在WindowsXP Professioal 下面搞了很久,也查了不少的资料,就是运行不了ORACLE器,每次连接都报没有Listener的错误,本来这个东西安装对于我来说就是一个新事物,还要给我出一些这样的问题,叫我怎么搞得出来吗。还好,今天要装RISING的企业版,所以就把操作系统GHOST回2003版,再把ORACLE装起,虽然利用装的这个时间下棋三盘,全输了,不过心理还是挺舒服原创 2007-07-17 21:50:00 · 6169 阅读 · 0 评论 -
Oracle中利用一个表结构拷贝成另外的表
1、将一个表的结构及数据全部拷贝成一个新表:create table components2 as select * from components2、只复制另外一个表的结构而不复制数据:create table components2 as select * from components where id注:在components表中id的最小值是1000,所以这里如果选择小于这个最小值的行,原创 2007-07-17 21:43:00 · 6643 阅读 · 0 评论 -
数据库设计三大范式应用实例剖析(讲得比较清楚)
转贴地址:http://blog.csdn.net/songkexin/archive/2007/01/18/1486289.aspx先说几句: 首先作者的劳动果实,让我对这个比较模糊到现在对范式有了一个比较清晰的认识。不过,结合我自己的实际理解及经验,我会在里面加入一些我个人的注释,以便于更好的理解,我希望原作者能够同意。我所以的个人说明都会放在{}内,并且以绿色的字体呈现转载 2007-07-16 21:03:00 · 12236 阅读 · 0 评论 -
从JSP WEB页面往数据库写入出现乱码的一种解决方法
Java是个好东西,写JAVA的感觉就是爽,可是在用到JAVA与数据库的时候,多半都会出现乱码的问题,特别是中文字符总是被强奸成为“?”,看到心理面多多少少有点难受。这也是我们被老外欺负,就因为这个软件是他们写的,对英语支持那里都是100%,可是我们的字符总是被他们耍皮球一样的扔过去扔过来。前面听说微软件出了个叫oneCare的杀毒,想拿来用用,居然提示说语言不支持,一个字“气”。原创 2007-07-18 10:35:00 · 9930 阅读 · 0 评论 -
Oracle,sqlserver,mysql的自增变量设置
Oracle,sqlserver,mysql的自增变量设置不同的东家养不同的女儿,这三种数据库在设置自增变量方面都是不同的,下面我归类了一下:1、Mysql。它的自增变量个人有认为是最好记的,使用AUTO_INCREMENT关键字,知道英文的就更好记忆了,如下创建一个带有自增变理的表:create table test(id int AUTO_INCREMENT primary key not n原创 2007-07-12 15:29:00 · 7960 阅读 · 0 评论 -
Oracle的解惑一二to_date()与24小时制表示法及mm分钟的显示
Oracle的解惑一二to_date()与24小时制表示法及mm分钟的显示:一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会和我一样,直觉的采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。如:select to_date(2005-01-01 13:14:20,y原创 2006-04-27 14:06:00 · 19014 阅读 · 1 评论 -
在oracle数据库中如何插入CLOB值
轉貼:http://blog.csdn.net/cmtobby/oracle中最常用的varcher2类型最多只能存储4000个字节的内容,一般情况下是能够满足用户的需求的。但是在一些特殊情况下(如要存储图片或者要存储的内容超过了4000个字节),varcher2就满足不了这个需求了。这个时候我们可以借助于oracle里面的大字段CLOB后者BLOB。举例如下: 首先,在数据转载 2006-04-19 16:53:00 · 23338 阅读 · 2 评论 -
几个关于正确及错误PL/SQL对照使用的示例
/**这是几个关于正确及错误PL/SQL对照使用的示例*/create table test(tid int primary key not null,tname varchar2(50));create sequence test_seq start with 1 increment by 1;insert into test values(test_seq.nextval原创 2007-09-01 15:59:00 · 5071 阅读 · 0 评论 -
SQL: "IN" Function
SQL: "IN" FunctionThe IN function helps reduce the need to use multiple OR conditions.译:IN函数有助于减少OR条件的复合使用。The syntax for the IN function is:译:IN函数的语法:SELECT columnsFROM tablesWHERE col翻译 2007-10-25 09:37:00 · 7929 阅读 · 0 评论