
Oracle
caok
这个作者很懒,什么都没留下…
展开
-
oracle数据库中,字段类型不一致,导致查询慢
最近一个WEBSERVICE突然变慢了,后查询发现,后台查询也非常慢(记录条数800多万),索引也有,如下语句SELECT P.ID,P.RECORD_ID,P.KEY_NAME,P.KEY_CONTENT FROM MED_EMR_PATIENT_RECORD R,MED_EMR_RECORD_EXTRACTINFO P原创 2016-08-04 14:39:55 · 3417 阅读 · 0 评论 -
Oracle 时间 毫秒
DATE: 使用7字节保存日期时间数据,只能精确到1秒。 TIMESTAMP(fractional_seconds_precision) : 使用7-11字节保存日期时间数据,根据指定精度(0-9)来决定,缺省为6,可精确到纳秒。//1秒 = 1,000微秒 = 1,000,000毫秒 = 1,000,000,000纳秒//JAVA:PreparedStatement.se原创 2008-11-26 19:17:00 · 4102 阅读 · 1 评论 -
Oracle与Ms Sqlserver拼结字符串的异同
Ms SqlServer: declare @sql varchar(1000),@temp varchar(10)set @sql = insert into fz (fzgh) values(+ddddd+)exec (@sql); 请注意字符串的左右全是单引号。 Oracle: strsql varchar2(200);原创 2008-11-25 18:05:00 · 829 阅读 · 0 评论 -
取得DBMS_MONITOR包的信息
SELECT * FROM DBA_SOURCE where TYPE=PACKAGE AND NAME LIKE DBMS_MONITOR%; text 字段信息如下: package dbms_monitor is ------------ -- OVERVIEW -- -- This package provides database原创 2008-11-14 13:27:00 · 849 阅读 · 0 评论 -
dbms_monitor.session_trace_enable 跟踪某个会话
1、先查出你想跟踪的某个机器的session信息SID,SERIAL#select SID,SERIAL# from v$session where lower(terminal) like %yf07%; 2、开启跟踪: exec dbms_monitor.session_trace_enable(SID,SERIAL#,TRUE,FALSE) ;3、查出跟踪文原创 2008-11-14 11:23:00 · 4121 阅读 · 0 评论 -
物化视图日志结构
物化视图的快速刷新要求基本必须建立物化视图日志,这篇文章简单描述一下物化视图日志中各个字段的含义和用途。 物化视图日志的名称为MLOG$_后面跟基表的名称,如果表名的长度超过20位,则只取前20位,当截短后出现名称重复时,Oracle会自动在物化视图日志名称后面加上数字作为序号。物化视图日志在建立时有多种选项:可以指定为ROWID、PRIMARY KEY和OBJECT ID转载 2008-11-14 10:39:00 · 1176 阅读 · 1 评论 -
什么是Oracle的物化视图
物化视图是包括一个查询结果的数据库对像,它可以说是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。物化视图存储基于远程表的数据,也可以称为快照。 物化视图可以查询表,视图和其它的物化视图。 通常情况下,物化视图被称为主表(在复制期间)或明细表(在数据仓库中)。 对于复制,物化视图允许你在本地维护远程数据的副本,这些副本是只读的。如果你想转载 2008-11-14 10:25:00 · 5066 阅读 · 0 评论 -
oracle里的常用命令
第一章:日志管理 1.forcing log switches sql> alter system switch logfile; 2.forcing checkpoints sql> alter system checkpoint; 3.adding online redo log groups sql> alter database add logf原创 2008-11-09 21:42:00 · 607 阅读 · 0 评论 -
Oracle中CLUSTER_FACTOR对SQL执行计划的影响
SELECT index_name, CLUSTERING_FACTOR FROM dba_indexes WHERE index_name = PK_MS_YJ01;以上语句可以查出主键索引的CLUSTER_FACTOR值,CLUSTER_FACTOR越小,当值趋近于1024(数据块数)时,表明数据行的存储顺序和索引顺序越接近,越有利于使用索引。 当CLUSTER_FAC原创 2008-11-04 08:54:00 · 1393 阅读 · 0 评论 -
Ms Sqlserver与Oralce取得表的列信息与外键信息
取得Ms SqlServer数据库中某张表的所有列: SELECT sysobjects.name AS TABLENAME, syscolumns.NAME as NAME, systypes.name VTYPE, syscolumns.LENGTH, syscolumns.XPREC, syscolumns.XSCALE, isnullab原创 2008-11-26 20:21:00 · 714 阅读 · 0 评论 -
Oracle 创建用户所有对象的同义词
Oracle同义词从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系。在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们,我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称前键入该表所有者的名称,如bsrun.doctor_info,所以这比较麻烦,遇到这种情况,我们该怎么办呢?原创 2009-02-10 21:55:00 · 2307 阅读 · 0 评论 -
ORACLE审计小结
1、什么是审计审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的SYS.AUD$表中,可通过视图dba_audit_trail查看)中。默认情况下审计是没有开启的。不管你是否打开数据库的审计功能,以下这些操转载 2008-12-18 14:47:00 · 1012 阅读 · 0 评论 -
ORACLE 11g 监听文件日志过大 造成客户端无法连接
昨天,客户端程序实然出现,无有效的监听,无法连接数据库,后查看WINDOWS服务器ORACLE监听服务,一切正常,没有任何问题,lsnrctl status,查看监听状态,发现奇慢,我把以前的监听停掉,重新创建一个监听后,一切正常,客户端马上就能连接,今天查看了一下日志,发现 D:\app\administrator\diag\tnslsnr\机器名\listenrt\trac原创 2012-11-05 14:34:28 · 3810 阅读 · 0 评论 -
Ubuntu修改IP地址后 ORALCE监听无法启动的解决方法。
最近,由于有一台服务器的IP地址更改后,ORACLE 10g的监听无法启动, IP地址更改后,需要修改hosts文件里的IP地址 sudo vi /etc/hosts原创 2010-04-28 11:13:00 · 1233 阅读 · 0 评论 -
Oracle10g只有数据文件的恢复(Windows)
1、首先安装一个全新的ORACLE,包括服务名、SID,安装目录应最好与原来的ORACLE目录一致。请注意我是安装在D盘,请按照你的实际安装目录进行操作。同时我的所有操作都是在sqlplus 中进行。 2、alter database backup controlfile to trace; 备份当前数据库控制文件,控制文件一般备份到D:/oracle/product/10.2原创 2009-10-23 14:19:00 · 9819 阅读 · 1 评论 -
Oracle10g扩展的帮助文件的安装
Oracle的在线帮助系统是通过ystem.help这个表来实现的,这个表里储存了Oracle里sql信息 首先使用system用户登录sqlplus,执行一下select count(1) from system.help;只有900多条,太少,这里你安装的帮助主题是900多条,不过这里太少了, 你没有安装扩展的帮助系统,这里的帮助太少。 1、执行以下语句,将以下两张表删原创 2009-10-22 14:19:00 · 836 阅读 · 0 评论 -
系统蓝屏,注册表文件丢失,ORACLE无法启动的解决
1、可从其他电脑导出相应的注册表文件,如下:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE]"inst_loc"="C://Program Files//Oracle//Inventory"[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_OraDb10g_ho原创 2009-10-13 11:09:00 · 2906 阅读 · 0 评论 -
PowerBuilder 读取Oracle Clob字段内容
最近需要用PowerBuilder读取Oracle 的Clob字段内容,发现直接使用SELECTBLOB读取的数据总是有数据不能完全读取问题。最后我在网上进行了搜罗,发现可以写一个FUNCTION来进行处理: 1、Oracle读取Clob函数,一次可以读取2000个字符: create or replace function getclob( table_name in varc原创 2009-03-10 08:53:00 · 2835 阅读 · 0 评论 -
Oracle exp query参数 转义符的各个操作系统通用解决方法
现在各个平台上通用的解决方法是采用parfile来解决: windows平台的方法如下: 首先建立一个1.txt文件: tables=employeefile=f:/exp.dmpquery="where birthday>= to_date(1980.12.18,yyyy-mm-dd)"然后:exp user/user@bsrun parfile原创 2008-12-19 09:16:00 · 2873 阅读 · 0 评论 -
Oracle exp/imp备份(导出/导入备份)
exp hely=y 说明: USERID 用户名/口令 FULL 导出整个文件 (N) BUFFER 数据缓冲区的大小 OWNER 所有者用户名列表 FILE 输出文件 (EXPDAT.DMP) TABLES 表名列表 COMPRESS 导入一个范围 (Y) RECORDLENGTH IO 记录的长度 GRANTS 导出权限 (Y) INCTYPE 增量导出类型 INDEXES 导出索引 (Y)转载 2008-12-18 14:55:00 · 2403 阅读 · 0 评论 -
基于索引的SQL语句优化之降龙十八掌
1 前言客服业务受到SQL语句的影响非常大,在规模比较大的局点,往往因为一个小的SQL语句不够优化,导致数据库性能急剧下降,小型机idle所剩无几,应用服务器断连、超时,严重影响业务的正常运行。因此,称低效的SQL语句为客服业务的‘恶龙’并不过分。数据库的优化方法有很多种,在应用层来说,主要是基于索引的优化。本次秘笈根据实际的工作经验,在研发原来已有的方法的基础上,进行转载 2008-10-30 21:33:00 · 458 阅读 · 0 评论 -
Oracle不支持脏读,控制事务执行先后顺序的方法
Oracle目前不支持脏读,对于未提交的数据只能在本进程中查询,其他进程用户无法查询,这样可能会造成如下问题: 当A和B两个不同进程的事务同时进行,B事务需要A事务的数据才能向下执行,也就是说A事务执行成功后B事务才能继续执行,如果A事务没有执行成功,B事务不能执行。对于这种情况可以采用加锁的方式进行,可以在两个事务的执行过程中增加排他锁,例如在A事务与B事务中都同时更新原创 2008-10-30 13:45:00 · 2155 阅读 · 0 评论 -
Oracle 学习3
41. 如何给表、列加注释? SQL>comment on table 表 is 表注释; 注释已创建。 SQL>comment on column 表.列 is 列注释; 注释已创建。 SQL> select * from user_tab_comments where comments is not null; 42. 如何查转载 2008-10-08 14:29:00 · 492 阅读 · 0 评论 -
Oracle merge用法(实现多表更新插入)
merge into sk_kskc a(目标表) using (select yk_ypcd.ypxh as ypxh,yk_ypcd.ypcd as ypcd,bfbz,zxbz ,lsjg from yk_typk ,yk_ypcd where yk_typk.ypxh=yk_ypcd.ypxh) b (数据来源)on (a.wpxh=b.ypxh and a.wpcd=b.ypcd原创 2008-10-06 08:29:00 · 5529 阅读 · 0 评论 -
Oracle 学习12(完结)
221. TRANSLATE(CHAR1,CHAR2,CHAR3)將CHAR1中的CHAR2的部分用CHAR3代替.SELECT TRANSLATE(ABCDEFGH,DE,MN) FROM DUAL; 222. UPPER(CHAR)將字符串CHAR全部為大寫. 223. ADD_MONTHS(D,N)將N個月增加到D日期.SELECT ADD_M转载 2008-10-23 09:50:00 · 544 阅读 · 0 评论 -
Oracle 学习11
201. /*+NOCACHE(TABLE)*/当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端例如:SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS; 202. /*+APPEND*/直接插入到表的最后,可以提高速度.insert /*转载 2008-10-23 09:43:00 · 381 阅读 · 0 评论 -
Oracle 学习2
21. 在ORACLE TABLE中如何抓取MEMO類型欄位為空的資料記錄? select remark from oms_flowrec where trim( from remark) is not null ; 22. 如何用BBB表的資料去更新AAA表的資料(有關聯的字段) UPDATE AAA SET BNS_SNM=(SELECT BNS转载 2008-10-08 11:26:00 · 486 阅读 · 0 评论 -
Oracle 学习1
1. Oracle安裝完成后的初始口令? internal/oracle sys/change_on_install system/manager scott/tiger sysman/oem_temp 2. ORACLE9IAS WEB CACHE的初始默认用户和密码? administrator/administrator转载 2008-10-08 11:25:00 · 461 阅读 · 0 评论 -
Oracle 学习8
141. 如何快速编译所有视图?SQL >SPOOL VIEW1.SQL SQL >SELECT ‘ALTER VIEW ‘||TNAME||’ COMPILE;’ FROM TAB; SQL >SPOOL OFF 然后执行VIEW1.SQL即可。 SQL >@VIEW1.SQL; 142. ORA-01555 SNAPSHOT TOO OLD的解决办法转载 2008-10-16 16:31:00 · 450 阅读 · 0 评论 -
Oracle 学习10
181. /*+INDEX(TABLE INDEX_NAME)*/表明对表选择索引的扫描方法.例如:SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX=M; 182. /*+INDEX_ASC(TABLE转载 2008-10-16 16:34:00 · 570 阅读 · 0 评论 -
Oracle 学习6
101. 如何搜索出前N条记录? SELECT * FROM empLOYEE WHERE ROWNUM ORDER BY empno; 102. 如何知道机器上的Oracle支持多少并发用户数? SQL>conn internal ;SQL>show parameter processes ; 103. db_block_size可转载 2008-10-13 09:21:00 · 470 阅读 · 0 评论 -
Oracle 学习7
121>.取時間點的日的寫法:SELECT TO_CHAR(SYSDATE,DD) FROM DUAL; 122>.取時間點的時的寫法:SELECT TO_CHAR(SYSDATE,HH24) FROM DUAL; 123>.取時間點的分的寫法:SELECT TO_CHAR(SYSDATE,MI) FROM DUAL;转载 2008-10-13 09:37:00 · 453 阅读 · 0 评论 -
redhat Enterprise 5安装Oracle10g
1. 硬件要求 1.swap 分区不低于2G 2.selinux 状态disable 3.物理内存不低于512M 2. 系统要求 redhat Enterprise 5 默认安装 3. 数据库要求3.1.软件下载 根据实际环环境从oracle官方网站下载相应的数据库转载 2008-10-13 15:16:00 · 1668 阅读 · 1 评论 -
找出最耗资源的sql
如果要找出最耗资源的sql,我们可以首先使用top等工具,找到最好资源的进程(记住进程号),例如,操作系统进程号为2796,然后根据这个进程号(v$process.spid)在v$process中找到进程地址(v$process.addr),然后根据这个地址在v$session中找到相应的sid(v$session.sid),然后根据这个sid找到相应的hash alue(v$session转载 2008-11-02 12:44:00 · 728 阅读 · 0 评论 -
Redhat Linux oracle 10g em 按钮乱码解决
操作系统 : Redhat AS 4 U5数据库: Oracle 10.2.0.31.修改jdk 下面的字体。[oracle@rac2 db_1]$ cd $ORACLE_HOME/jdk/jre/lib/[oracle@rac2 lib]$ mv font.properties font.properties_bak[oracle@rac2 lib]$[oracle@rac2 lib转载 2008-11-02 12:41:00 · 1569 阅读 · 0 评论 -
oracle中的to_date参数含义
日期格式参数 含义说明:D 一周中的星期几 DAY 天的名字,使用空格填充到9个字符 DD 月中的第几天 DDD 年中的第几天 DY 天的简写名 IW ISO标准的年中的第几周 IYYY ISO标准的四位年份 YYYY 四位年份 YYY,YY,Y 年份的最后三位,两位,一位 HH 小时,按12小时计 HH24 小时,按24小时计 MI 分 SS 秒 MM 月 Mo转载 2008-11-02 12:39:00 · 593 阅读 · 0 评论 -
Oracle管理
一、Oracle的组件结构: 为了深入到Oracle服务器内部,对Oracle服务器有更深刻的认识。先了解一下Oracle的组件结构。 回顾一下客户端是怎样和Oracle服务器进行交互的?Linstener把客户端的请求传给服务器,客户端和服务器会话就开始了。Oracle服务器是怎样执行客户端的请求的呢,因此也需要了解Oracle的组件结构。1、SGA区:System Gro转载 2008-10-31 10:11:00 · 922 阅读 · 0 评论 -
Oracle的select for update
多数情况下,提取循环中所完成的处理都会修改由游标检查出的行,PL/SQL提供了进行这样处理的一种语法。 这种语法包括两部分——在游标声明部分的FOR UPDATE子句和在UPDATE或DELETE语句中的WHERE CURRENT OF 子句。 通常,SELECT操作将不会对正处理的行执行任何锁定设置,这使得连接到该数据库的其他会话可以改变正在选择的数据。 但是,结果集仍然是一致性的。当确定了活动转载 2008-10-30 15:24:00 · 747 阅读 · 0 评论 -
Oracle 学习5
81. 內連接INNER JOIN? Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no; 82. 如何外連接? Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no(+); Select a.* from bsempms转载 2008-10-13 09:14:00 · 487 阅读 · 0 评论 -
Oracle 学习4
61. 怎样查看ORACLE中有哪些程序在运行之中? 查看v$sessions表 62. 怎么可以看到数据库有多少个tablespace? select * from dba_tablespaces; 63. 如何修改oracle数据库的用户连接数? 修改initSID.ora,将process加大,重启数据库.转载 2008-10-13 09:13:00 · 598 阅读 · 0 评论