Oracle数据库解决方案及技术记录
文章平均质量分 59
liyimingvip
这个作者很懒,什么都没留下…
展开
-
Oracle date操作
1. date常规的操作(请注意,常规不代表oracle提供date操作的全部)1.1. date转换为字符串我们总是想看到日期和时间是什么样的(希望按照我们指定的格式显示), 因此总是需要把它to_char代码:SQL> select to_char(sysdate,yyyy"(year)"mm"(month)"dd"(day) "hh24"(hour)"mi"(minute)"ss"转载 2007-10-29 16:24:00 · 2150 阅读 · 0 评论 -
关于oracle os认证和口令文件认证的简要解析
关于oracle os认证和口令文件认证的简要解析环境 windows2000+sp4,oracle9.201 oracle软件以oracle帐户安装 一、sysdba的权限 sysdba(sysoper和normal)是登录数据库的身份,与角色(dba、resource)、对象权限及系统权限有所区别,登录身份表明了可对数据库的整体进行哪些操作,sysdba有些类似unix下的转载 2008-10-30 18:59:00 · 875 阅读 · 1 评论 -
更改源数据库DMP字符集以符合导入至目标字符集(oracle8-->oracle9i)
前提说明:源数据库字符集合是:AMERICAN_AMERICA.WE8ISO8859P1目标数据库字符集合是:SIMPLIFIED CHINESE_CHINA.ZHS16GBK使用时注意本机的操作系统和服务器的数据库字符集合为一致;下面进入正题:步骤1、用UltraEdit打开源DMP(C:/镇海/20080520.DMP)如图p1 获取1、2下面(即2、3字节处)的16原创 2008-11-06 13:30:00 · 1153 阅读 · 0 评论 -
通过启用约束找出表中的重复记录
首先假设表FC_owner中存在外键OINSID重复;其对应的约束名称为:PK_FC_OWNER_I_OPTINST 1、通过创建表exceptionsC:/oracle/ora92/rdbms/admin/utlexcpt.sql crreate table exceptions(row_id rowid, owner varchar2(30),原创 2009-01-08 16:18:00 · 576 阅读 · 0 评论 -
ORACLE服务意外删除或者注册表被修改恢复方案
1、监听服务重建可通过Net Configuration Assistant重新配置;2、若对应的数据服务也不存在了,则需要通过导入、导出注册表来实现服务的重建;(如图pic1/pic2)将导出的*.reg导入到目标机器注册表中,后检查oracle路径以及数据库服务名是否与目标机器一致;3、重启计算机后可发现新添加的服务已存在,启动即可。原创 2009-02-13 18:07:00 · 3092 阅读 · 1 评论 -
LPAD用法
LPAD( string1, padded_length, [ pad_string ] ) 其中string1是需要粘贴字符的字符串 padded_length是返回的字符串的大小,如果这个数量比原字符串的长度要短,LPAD函数将会截取string1的前padded_length个字符; pad_string是个可选参数,这个字符串是要粘贴到string1的左边,如果转载 2009-03-23 11:23:00 · 731 阅读 · 0 评论 -
oracle集合介绍
集合类似C语言中的数组,在ORACLE7.3及以前的版本中只有一种集合称为PL/SQL表,这种类型的集合依然保留,就是索引(INDEX_BY)表。PL/SQL有三种类型的集合a、Index_by表b、嵌套表c、VARRAY三种类型的集合之间的差异,包括数据绑定、稀疏性(sparsity)、数据库中的存储能力都有不相同。数据绑定:绑定涉及到集合中元素数量的限制,VARRAY集合中的元素的数量转载 2009-05-07 09:02:00 · 448 阅读 · 0 评论 -
oracle table-lock的5种模式
oracle table-lock的5种模式Oracle中的锁定可以分为几类:DML lock(data lock),DDL lock(dictionary lock)和internal lock/latch。DML lock又可以分为row lock和table lock。row lock在select.. for update/insert/update/delete时隐式自动产生,而ta转载 2009-05-06 14:09:00 · 431 阅读 · 0 评论 -
归档模式下初始化中归档参数的设置
起因:由于只设置了一个归档路径(#log_archive_dest = C:/oracle/ora92/database/archive/allview),而在导库时会产生大量的归档日志,故触发了ORA-00257错误;从而会导致数据导库处于等待状态;10g中发生该错误有可能是FLASH_RECOVERY_AREA空间不够;错误分析过程见:http://dev.yesky.com/43转载 2009-05-14 13:48:00 · 559 阅读 · 0 评论 -
ORA-00376错误 利用归档日志恢复数据文件
出项的错误 SQL> select file#,status from v$datafile;FILE# STATUS---------- -------1 SYSTEM2 ONLINE3 ONLINE4 ONLINE5 ONLINE6 ONLINE7 ONLINE8 ONLINE9 ONLINE10 ONLINE11 ONLINE12 ONLINE13 RECOVER14 REC转载 2009-05-14 13:51:00 · 988 阅读 · 0 评论 -
连接Oracle 10g时ORA-12514TNS监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决
解决方法:1. 打开/network/admin/listener.ora文件,找到: SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = D:/oracle/product/10.2.0/db_1) (PROGRAM = extpr转载 2010-01-27 16:12:00 · 802 阅读 · 0 评论 -
设计 INSTEAD OF 触发器
设计 INSTEAD OF 触发器INSTEAD OF 触发器的主要优点是可以使不能更新的视图支持更新。包含多个基表的视图必须使用 INSTEAD OF 触发器来支持引用表中数据的插入、更新和删除操作。INSTEAD OF 触发器的另一个优点是使您得以编写这样的逻辑代码:可以拒绝批处理中的某些部分同时允许批处理的其它部分成功。 INSTEAD OF 触发器可以进行以下操作:转载 2010-01-27 16:14:00 · 519 阅读 · 0 评论 -
在ORACLE数据库中实现从非归档模式到归档模式的转化
一、查看数据库运行模式 可以用超级用户(INTERNAL)在SQLPLUS中使用命令ARCHIVE LOG LIST查看 SQL> archive log list Database log mode No Archive Mode Automatic archivalDisabled Archive destination转载 2010-01-27 16:15:00 · 506 阅读 · 0 评论 -
ORA-27100:shared memory realm already exists
修改SGA、PGA等原创 2010-09-28 15:28:00 · 802 阅读 · 0 评论 -
Oracle从归档模式变成非归档模式详细步骤
一、首先运行全备份的批处理文件,该步骤是对数据库在归档模式下产生的归档日志的一个备份和清理。(也可以通过归档日志删除同步的方式,详见前一篇文章)Database_bp.bat内容如下:set oracle_sid=yzfcrman target sys/computer msglog D:\RmanLogs\%date:~0,10%.log cmdfile=D:\database_原创 2012-04-23 12:11:11 · 768 阅读 · 0 评论 -
ORACLE TRIM 详解
In Oracle/PLSQL, the trim function removes all specified characters either from the beginning or the ending of a string.The syntax for the trim function is:trim( [ leading | trailing | both [ t翻译 2008-06-06 15:50:00 · 1951 阅读 · 1 评论 -
char varchar nvarchar varchar2 nvarchar2的区别
1.char char的长度是固定的,最大支持2000个字节。 char的长度是固定的,比如说,你定义了char(20),即使你你插入abc,不足二十个字节,数据库也会在abc后面自动加上17个空格,以补足二十个字节; char是区分中英文的,中文在char中占两个字节,而英文占一个,所以char(20)你只能存20个字母或10个汉字。 char适用于长度比较固定的,一般不原创 2008-08-27 16:16:00 · 517 阅读 · 0 评论 -
Oracle中logmnr包的使用详解
dbms_logmnr是oracle在oracle8i所提供的新package。它主要用于分析log file文件(包括online redo log file,archived log file),将log file中的信息转存到v$logmnr_contents中,从而获取对oracle数据库操作的历史信息。它不仅可以分析oracle8i的log file,也可以分析oracle8转载 2008-08-25 14:55:00 · 869 阅读 · 0 评论 -
Oracle学习-外连接
对于外连接: Oracle中可以使用“(+) ”来表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN 外部连接"+"按其在"="的左边或右边分右连接和左连接.若不带"+"运算符的表中的一个行不直接匹配于带"+"预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回.若二者均不带+,则二者中无法匹配的均被返回.利用外部连接"+",可以替代效率十分低下的 no转载 2007-10-29 16:55:00 · 427 阅读 · 0 评论 -
如何收缩临时数据文件的大小
如何收缩临时数据文件的大小9i以下版本采用ALTER DATABASE DATAFILE file name RESIZE 100M类似的语句9i以上版本采用ALTER DATABASE TEMPFILE file name RESIZE 100M注意,临时数据文件在使用时,一般不能收缩,除非关闭数据库或断开所有会话,停止对临时数据文件的使用。1.startup --启动数据原创 2007-10-29 17:18:00 · 674 阅读 · 0 评论 -
%date:~0,10% 的使用
谈“%date:~0,10% 的使用”- - 之前我曾经写过一个关于“%date:~0,10% 的使用方法的帖子,见于 http://gnaw0725.blogdriver.com/gnaw0725/458144.html,今天无意中翻到 set的帮助,竟然发现它的用法原来是SET命令的扩展集中众多用法之一,霍霍,看样子越是手边的东西,就越不容易注意到。 也证实了之前我在上面帖转载 2007-10-29 17:30:00 · 1838 阅读 · 0 评论 -
Oracle数据库操作中常用bat文件
(1)创建数据库sqlplus "sys/allview@allview as sysdba" create tablespace realstar datafile c:/oracle/oradata/allview/realstar.ora size 5m reuse autoextend on next 512k maxsize unlimited; cr原创 2007-10-29 17:36:00 · 774 阅读 · 0 评论 -
not Exists用法
要查找不出版商业书籍的出版商的名称:USE pubsSELECT pub_nameFROM publishersWHERE NOT EXISTS (SELECT * FROM titles WHERE pub_id = publishers.pub_id AND type = business)原创 2007-10-29 17:27:00 · 562 阅读 · 0 评论 -
oracle实现用函数返回表集合
(1)CREATE OR REPLACE Type rdtltype As Object (id1 Number(10)); (2)CREATE OR REPLACE Type rdtlTable As Table Of rdtltype;(3)create or replace function ReturnTableTest return rdtlTable Pipelined Is原创 2007-10-29 16:39:00 · 1703 阅读 · 0 评论 -
移动Oracle控制文件
实现方法: 1、 SHUTDOWN 2、用操作系统命令将C:/Oracle/oradata/oradb/control01.ctl拷贝到新的目录:D:/Oracle/oradb/data,在DOS下 host copy C:/Oracle/oradata/oradb/control01.ctl D:/Oracle/oradb/data 则现在控制文件的完整路径为:D:/Oracl原创 2008-03-18 13:25:00 · 497 阅读 · 0 评论 -
手工修改spfile文件后,产生ora-00600错误解决方法
不能手工修改spfile文件spfile文件是不能用编辑器修改的。必须在sqlplus里用命令修改的,比如alter system set ... scope=...或者先修改pfile,然后通过create spfile from pfile;将pfile里的内容复制到spfile里。产生的错误如下:c:>sqlplus /nolog sql>conn sys/allview@all转载 2008-01-09 16:40:00 · 667 阅读 · 0 评论 -
关于oracle os认证和口令文件认证的简要解析(转自网易BLOG)
关于oracle os认证和口令文件认证的简要解析1、os认证和口令文件认证其实质是对oracle数据库采取何种管理方式,是本地管理还是通过一台管理服务器统一管理。 本地管理采用的就是os认证方式,统一管理采用的就是口令文件认证方式 2、两种认证的实现 oracle数据库通过sqlnet.ora文件中的参数SQLNET.AUTHENTICATION_SERVICES,PFILE(或SPF转载 2008-01-11 10:06:00 · 620 阅读 · 0 评论 -
在Oracle中查看各个表、表空间占用空间的大小
查看当前用户每个表占用空间的大小: Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name查看每个表空间占用空间的大小: Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespa转载 2008-04-17 19:07:00 · 440 阅读 · 0 评论 -
oracle-merge用法详解
Oracle9i引入了MERGE命令,你能够在一个SQL语句中对一个表同时执行inserts和updates操作. MERGE命令从一个或多个数据源中选择行来updating或inserting到一个或多个表.在Oracle 10g中MERGE有如下一些改进: 1、UPDATE或INSERT子句是可选的 2、UPDATE和INSERT子句可以加WHERE子句 3、转载 2008-04-21 13:56:00 · 872 阅读 · 0 评论 -
收缩重建撤消表空间
1、连接并查看原撤消表空间名D:Documents and SettingsLMing>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期二 4月 22 10:48:49 2008Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL>原创 2008-04-22 11:33:00 · 430 阅读 · 0 评论 -
ORA-00312: 联机日志 1 线程
2007/12/18 09:50 A.M. Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp. C:/Documents and Settings/>sqlplus /n转载 2008-05-23 12:21:00 · 4759 阅读 · 0 评论 -
Oracle10g EM Console重新配置命令解析(10gR2--EMCA常用命令说明)
在10g 中,我们可能会经常遇到OEM不能正常使用的问题,但导致问题的原因不尽相同,最后绝大多数问题可以通过emca 这个命令来解决,详细的说明可以查看连机帮助,下面给出一些常用的命令,及实例步骤.创建一个EM资料库emca -repos create重建一个EM资料库emca -repos recreate删除一个EM资料库emca -repos drop配置数据库的 Database Co原创 2008-05-27 17:09:00 · 1320 阅读 · 0 评论 -
Oracle删除归档日志文件(同步)
1、用rman命令进入rman;2、connect target /3、crosscheck archivelog all;4、delete expired archivelog all;5、quit 实例:1、先删除1_561.DBF至1_576的归档日志文件此时在EM中还能看到。如上图2、在操作系统删除后如下图3、执行同步完毕后效果如下图原创 2011-11-16 12:18:03 · 1083 阅读 · 0 评论