Oracle常见提问3(转)
Oracle常见提问3(转)[@more@] 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_MONTHS(SYSDATE,5) FROM DUAL; 224. LAST_DAY(D) 得到包含D日期的月份的最后的一天的日期. SELECT LAST_DAY(SYSDATE) FROM DUAL; 225. MONTH_BETWEEN(D1,D2) 得到两个日期之间的月
Oracle常见提问2(转)
Oracle常见提问2(转)[@more@] 211. LPAD(CHAR1,N,CHAR2) 用字符串CHAR2包括的字符左填CHAR1,使其长度为N. SELECT LPAD('ABCDEFG',10'123') FROM DUAL; 结果: '123ABCDEFG' 212. LTRIM(CHAR,SET) 从字符串CHAR的左边移去字符串SET中的字符,直到第一个不是SET中的字符为止. SELECT ('CDEFG','CD') FROM DUAL; 结果: 'EFG' 213. NLS_INITCAP(CHAR) 取字符CHAR的第一个字符大写,其余字符为小写. SELECT NLS_INITCAP('ABCDE') FROM DUAL; 214. NLS_LOW
Oracle常见提问1(转)
Oracle常见提问1(转)[@more@]201. /*+NOCACHE(TABLE)*/ 当进行全表扫瞄时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最 近使用端 例如: SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS; 202. /*+APPEND*/ 直接插入到表的最后,可以提高速度. insert /*+append*/ into test1 select * from test4 ; 203. /*+NOAPPEND*/ 通过在插入语句生存期内停止并行模式来启动常规插入. insert /*+noappend*/ into test1 select * from
Oracle初学者问题8(转)
Oracle初学者问题8(转)[@more@] 131>.返回参数一年中的第几天的写法: SELECT TO_CHAR(SYSDATE,'DDD') FROM DUAL; 132>.返回午夜和参数中指定的时间值之间的秒数的写法: SELECT TO_CHAR(SYSDATE,'SSSSS') FROM DUAL; 133>.返回参数中一年的第几周的写法: SELECT TO_CHAR(SYSDATE,'WW') FROM DUAL; 大家在应用ORACLE的时候可能会遇到很多看起来不难的问题, 特别对新手来说, 今天我简 单把它总结一下, 发布给大家, 希望对大家有帮助! 和大家一起探讨, 共同进步!
Oracle初学者问题7(转)
Oracle初学者问题7(转)[@more@] 121>.取时间点的月份的写法: SELECT TO_CHAR(SYSDATE,'MM') FROM DUAL; 122>.取时间点的日的写法: SELECT TO_CHAR(SYSDATE,'DD') FROM DUAL; 123>.取时间点的时的写法: SELECT TO_CHAR(SYSDATE,'HH24') FROM DUAL; 124>.取时间点的分的写法: SELECT TO_CHAR(SYSDATE,'MI') FROM DUAL; 125>.取时间点的秒的写法: SELECT TO_CHAR(SYSDATE,'SS') FROM DUAL; 126>.取时间点的日期的写法: SELECT TRU
Oracle初学者问题9(转)
Oracle初学者问题9(转)[@more@] 141. 如何删除重复记录? DELETE FROM TABLE_NAME WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2); 142. 如何快速编译所有视图? SQL >SPOOL VIEW1.SQL SQL >SELECT ‘ALTER VIEW ‘||TNAME||’ COMPILE;’ FROM TAB; SQL >SPOOL OFF 然后执行VIEW1.SQL即可。 SQL >@VIEW1.SQL; 143. ORA-01555 SNAPSHOT TOO OLD的解决办法 增加
Oracle初学者问题5(转)
Oracle初学者问题5(转)[@more@]41. 如何给表、列加注释? SQL>comment on table 表 is '表注释'; 注释已创建。 SQL>comment on column 表.列 is '列注释'; 注释已创建。 SQL> select * from user_tab_comments where comments is not null; 42. 如何查看各个表空间占用磁盘情况? SQL> col tablespace format a20 SQL> select .file_id 文件ID号, .tablespace_name 表空间名, .bytes 字节数, (b.bytes-sum(nvl(a.bytes,0))) 已使用
Oracle初学者问题6(转)
Oracle初学者问题6(转)[@more@] 111. tablespace 是否不能大于4G? 没有限制. 112. 返回大于等于N的最小整数值? SELECT CEIL(N) FROM DUAL; 113. 返回小于等于N的最小整数值? SELECT FLOOR(N) FROM DUAL; 114. 返回当前月的最后一天? SELECT LAST_DAY(SYSDATE) FROM DUAL; 115. 如何不同用户间数据导入? IMP SYSTEM/MANAGER FILE=AA.DMP FROMUSER=USER_OLD TOUSER=USER_NEW ROWS=Y INDEXE S=Y ; 116. 如何找数据库表的主键字段的名称? SQL&
Oracle初学者问题4(转)
Oracle初学者问题4(转)[@more@] 31. SQLPLUS下如何修改编辑器? DEFINE _EDITOR="<编辑器的完整路经>" -- 必须加上双引号 来定义新的编辑器,也可以把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它 永久有效。 32. ORACLE产生随机函数是? DBMS_RANDOM.RANDOM 33. LINUX下查询磁盘竞争状况命令? Sar -d 33. LINUX下查询CPU竞争状况命令? ar -r 34. 查询当前用户对像? SELECT * FROM USER_OBJECTS; SELECT * FROM
Oracle初学者问题3(转)
Oracle初学者问题3(转)[@more@] 21. 在ORACLE TABLE中如何抓取MEMO类型栏位为空的资料记录? elect remark from oms_flowrec where trim(' ' from remark) is not null ; 22. 如何用BBB表的资料去更新AAA表的资料(有关联的字段) UPDATE AAA SET BNS_SNM=(SELECT BNS_SNM FROM BBB WHERE AAA.DPT_NO=BBB.DPT_NO) W HERE BBB.DPT_NO IS NOT NULL; 23. P4电脑安装方法 将SYMCJIT.DLL改为SYSMCJIT.OLD 24. 何查询SERVER是不是OPS? SELECT * FROM V$OPTION; 如果PARAL
Oracle初学者问题2(转)
Oracle初学者问题2(转)[@more@] 11. 怎样得到触发器、过程、函数的创建脚本? desc user_source user_triggers 12. 怎样计算一个表占用的空间的大小? elect owner,table_name, NUM_ROWS, BLOCKS*AAA/1024/1024 "Size M", EMPTY_BLOCKS, LAST_ANALYZED from dba_tables where table_name='XXX'; Here: AAA is the value of db_block_size ; XXX is the table name you want to check 13. 如何查看最大会话数? SE
Oracle初学者问题1(转)
Oracle初学者问题1(转)[@more@]1. Oracle安装完成后的初始口令? internal/oracle ys/change_on_install ystem/manager cott/tiger ysman/oem_temp 2. ORACLE9IAS WEB CACHE的初始默认用户和密码? administrator/administrator 3. oracle 8.0.5怎么创建数据库? 用orainst。如果有motif界面,可以用orainst /m 4. oracle 8.1.7怎么创建数据库? dbassist 5. oracle 9i 怎么创建数据库? dbca 6. oracle中的裸设备指的是什么? 裸
ORACLE8的分区管理(转)
ORACLE8的分区管理[@more@] 分区表的建立 分区表的扩容 删除不必要的分区 分区的其他操作 查看分区信息 EXPORT分区 IMPORT分区 ---- 一、 分区概述: ---- 为了简化数据库大表的管理,ORACLE8推出了分区选项。分区将表分离在若干不同的表空间上,用分而治之的方法来支撑无限膨胀的大表,给大表在物理一级的可管理性。将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。针对当前社保及电信行业的大量日常业务数据,可以推荐使用ORACLE8的该选项。 返回---- 二、分区的优点: ---- 1 、增强可用性:如果表
Oracle的Index-2(转)
Oracle的Index-2[@more@]二讲,索引也有好坏 索引有 B tree 索引, Bitmap 索引, Reverse b tree 索引, 等。最常用的是 B tree 索引。 B 的全称是Balanced , 其意义是,从 tree 的 root 到任何一个leaf ,要经过同样多的 level. 索引可以只有一个字段(Single column), 也可以有多个字段(Composite),最多32个字段,8I 还支持 Function-based index. 许多developer 都倾向于使用单列B 树索引。 所谓索引的好坏是指: 1,索引不是越多越好。特别是大量从来或者几乎不用的索引,对系统只有损害。OLTP系统每表超过5个索引即会降低性能,
Oracle的Index-3(转)
Oracle的Index-3[@more@]三讲,索引再好,不用也是白搭 抛开前面所说的,假设你设置了一个非常好的索引,任何傻瓜都知道应该使用它,但是Oracle 却偏偏不用,那么,需要做的第一件事情,是审视你的 sql 语句。 Oracle 要使用一个索引,有一些最基本的条件: 1, where 子句中的这个字段,必须是复合索引的第一个字段; 2, where 子句中的这个字段,不应该参与任何形式的计算 具体来讲,假设一个索引是按 f1, f2, f3的次序建立的,现在有一个 sql 语句, where 子句是 f2 = : var2, 则因为 f2 不是索引的第1个字段,无法使用该索引。 第2个
Oracle的Index-1(转)
Oracle的Index-1[@more@]作者:heyongzhou | 来自:不详 | 点击:387 | 发布:2001-11-8 索引( Index )是常见的数据库对象,它的设置好坏、使用是否得当,极大地影响数据库应用程序和Database 的性能。虽然有许多资料讲索引的用法, DBA 和 Developer 们也经常与它打交道,但笔者发现,还是有不少的人对它存在误解,因此针对使用中的常见问题,讲三个问题。此文所有示例所用的数据库是 Oracle 8.1.7 OPS on HP N series ,示例全部是真实数据,读者不需要注意具体的数据大小,而应注意在使用不同的方法后,数据的比较。本文所讲基本都是陈词
ORACLE使用经验(转)
ORACLE使用经验[@more@]作者:不详 | 来自:不详 | 点击:533 | 发布:2001-11-8 1.having 子句的用法 having 子句对 group by 子句所确定的行组进行控制,having 子句条件中只允许涉及常量,聚组函数或group by 子句中的列. 返回2.外部联接"+"的用法 外部联接"+"按其在"="的左边或右边分左联接和右联接.若不带"+"运算符的表中的一个行不直接匹配于带"+"预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回.若二者均不带'+',则二者中无法匹配的均被返回.利用外部联接"
Oracle数据库碎片整理(转)
Oracle数据库碎片整理[@more@]---摘自《计算机世界日报》(文/湖北 龚德政)---- 我们知道,Oracle作为一种大型数据库,广泛应用于金融、邮电、电力、民航等数据吞吐量巨大,计算机网络广泛普及的重要部门。对于系统管理员来讲,如何保证网络稳定运行,如何提高数据库性能,使其更加安全高效,就显得尤为重要。作为影响数据库性能的一大因素--数据库碎片,应当引起DBA的足够重视,及时发现并整理碎片乃是DBA一项基本维护内容。 ---- 1、碎片是如何产生的 ---- 当生成一个数据库时,它会分成称为表空间(Tablespace)的多个逻辑段(Segment)
ORACLE最重要的参数信息 (转)
ORACLE最重要的参数信息[@more@]1:增加初始化参数db_block_buffers,这是高速缓存。当数据要显示、处理、测试一项 数据时,它首先要驻留在这个高速缓冲中,该参数越大,ORACLE在内存中找到数据的 可能性越大,使用I/O的次数就会相应降低。 2:增加share_pool_size,该参数是库高速缓存和数据字典的告诉缓存,该参数越大,将大大 减少ORALCE进行重新分析语法的工作量和管理自身的时间。3:释放I/O流并把数据同索引分开。在数据方面:分离数据和索引;在修改方面:分离转返段重演日志 (redo)和归档日志;在系统开销方面:分离系统表空间、TO
oracle锁的管理(转)
oracle锁的管理。[@more@]锁的种类:数据锁DML,字典锁DDL,表锁TM,事务锁TX,人工锁定DML锁的模式1:空2:行共享(RS):行共享是一个共享表锁,它用于专用锁。3:行专用(RX):用于行的修改4:共享锁(S):阻止其他DML操作5:共享行专用(SRX):阻止其他事务操作6:专用(X):独立访问使用V$LOCK字段内容:SID,TYPE,ID1,ID2,LMODE,REQUEST,CTIME,BLOCKTYPE:TX(TM,DML,表锁),MR介质恢复,ST磁盘空间管理LMODE/REQUEST:01:空, 2:RS, 3:RX 4:S 5:SRX 6:XLMODE:0,1表明进程已经获得一个锁,非0,等待获得一个琐ID1