- 博客(33)
- 收藏
- 关注
原创 关于Oracle数据库的用户对象配置以及数据镜像的总结--转载于项目组周朝勇笔记
--转载于项目组周朝勇笔记 主题:1. 配置表空间和各种用户对象。2. 建立从一个实时数据库到一个备份数据库的数据镜像。 环境:Sun Solaris Unix 9 Oracle 9i 条件:1.存在两个空的数据库:live database,backup database。 2.用户对以上两个数据库均有sysdba 权限。 2.以上两个数据库所在服务器可以通过TCP
2004-07-22 15:10:00
2844
原创 Project Dairy -2
what happen after 5Pm ? it is a big upset after user shouting that the combo box is not working properly as what they expected . in fact it is the filter function which is required by user in the
2004-06-23 22:57:00
1697
原创 Project Diary - 1
Wake up , it was 2nd day of UAT . in fact , client just starts the actually testing from today . The Master Data will be setup today . Again , i am the only person to join this UAT , my team has to
2004-06-22 21:18:00
1167
原创 一个成功的增量SNAPSHOT 例子
Case: 上海有一个数据库,北京有另一个数据库,都是oracle9i 标准版. 在上海的数据库里,需要复制北京的一个表. 每天定时复制一次.由于数据量 较大,不能采用全备份恢复的方法. 故采用增量snapshot Procedure: Step1: 在上海市服务器端,建立网络服务名Beijing $HOST$=
2004-05-27 11:38:00
1544
1
原创 VB程序打印水晶报表的典型方法2
描述: 本文介绍另一种流行的一种VB程序打印水晶报表的方法. 环境: MS SQL SERVER 2000 / VB6 / CRYSTAL REPORT8.5 步骤1: 建立ODBC连接 2: 创建一个为Crystal Report报表文件 3: 加载Microsoft ActiveX Data Objects Library 至项目的Refere
2004-02-20 11:30:00
2584
原创 VB程序打印水晶报表的典型方法1
描述: 本文介绍流行的一种VB程序打印水晶报表的方法,具有比较好的扩展性. 环境: MS SQL SERVER 2000 / VB6 / CRYSTAL REPORT8.5 步骤 1: 建立ODBC连接 2: 创建一个为Crystal Report检索数据的过程(procedure)举例: (通过日期查询总额) if ex
2004-02-20 11:29:00
3547
2
原创 水晶报表小技巧1- 动态压缩显示
最近尝试做一个报表: 可以看出供货商, 采购编号需要完全的压缩显示(suppress if duplicated) , 而采购交货日则是在同一采购编号中进行压缩显示,不过如何达到这个效果呢?这里介绍一种简单的方法: 选择需要进行处理的对象, 右键, 选择Format Field , 勾中Suppress If Duplicated !更重要的是,
2004-02-20 11:24:00
1489
原创 ORACLE 面试问题-技术篇(2)
ORACLE 面试问题-技术篇(2)21. 如何判断数据库的时区?解答:SELECT DBTIMEZONE FROM DUAL;22. 解释GLOBAL_NAMES设为TRUE的用途解答:GLOBAL_NAMES指明联接数据库的方式。如果这个参数设置为TRUE,在建立数据库链接时就必须用相同的名字连结远程数据库23。如何加密PL/SQL程序?解答:WRAP
2004-02-01 23:09:00
1631
原创 ORACLE 面试问题-技术篇(1)
这也许是你一直期待的文章,在关注这部分技术问题的同时,请务必阅读有关面试中有关个人的问题和解答(这部分将在下几期中出现)。这里的回答并不是十分全面,这些问题可以通过多个角度来进行解释,也许你不必在面试过程中给出完全详尽的答案,只需要通过你的解答使面试考官了解你对ORACLE概念的熟悉程度。 1. 解释冷备份和热备份的不同点以及各自的优点 解答:热备份针对归档模式的数据
2004-01-05 12:03:00
1436
原创 从不sequential的sequence
遇到过好多问题关于如何在ORACLE 中创建类似SQLSERVER或ACCESS中自增长字段。答案多是先建立一个Sequence,然后在Trigger中将Sequence的NEXTVAL的取值赋予所需要的列。看上去还不错。 但是一切真的那么顺利吗?Sequence 真的可以做到提供一序列连续没有遗漏的序列数值吗? 不妨作个实验
2003-12-02 22:02:00
1206
原创 神秘的DUAL
DUAL ? 有什么神秘的? 当你想得到ORACLE系统时间, 简简单单敲一行SQL不就得了吗? 故弄玄虚….SQL> select sysdate from dual;SYSDATE---------28-SEP-03 哈哈, 确实DUAL的使用很方便. 但是大家知道DUAL倒底是什么OBJECT, 它有什么特殊的行为吗? 来,我们一起看一看. 首先搞清楚DU
2003-11-01 22:57:00
1736
1
原创 先排序还是先取值
先排序还是先取值 题目: MS SQLSERVER和ORACLE中取出表中按照某字段排序的前N条记录 这个题目看上去似乎那么简单,两种数据库都提供ORDER BY子句. 问题应该能够迎刃而解吧. 先试一下MS SQLSERVER是怎么做的: use Northwind;create table TestSort (ID integer
2003-10-02 01:19:00
1446
原创 ORACLE SQL性能优化系列 (十四) 完结篇
46. 连接多个扫描如果你对一个列和一组有限的值进行比较, 优化器可能执行多次扫描并对结果进行合并连接.举例: SELECT * FROM LODGING WHERE MANAGER IN (‘BILL GATES’,’KEN MULLER’); 优化器可能将它转换成以下形式 SELECT * FROM LO
2003-09-05 08:51:00
1586
原创 ORACLE SQL性能优化系列 (十三)
43. 用WHERE替代ORDER BYORDER BY 子句只在两种严格的条件下使用索引. ORDER BY中所有的列必须包含在相同的索引中并保持在索引中的排列顺序.ORDER BY中所有的列必须定义为非空. WHERE子句使用的索引和ORDER BY子句中所使用的索引不能并列. 例如: 表DEPT包含以下列: D
2003-09-03 22:43:00
1657
原创 ORACLE SQL性能优化系列 (十二)
39. 总是使用索引的第一个列如果索引是建立在多个列上, 只有在它的第一个列(leading column)被where子句引用时,优化器才会选择使用该索引. 译者按:这也是一条简单而重要的规则. 见以下实例. SQL> create table multiindexusage ( inda number , indb number , descr varch
2003-09-03 10:34:00
1412
原创 ORACLE SQL性能优化系列 (十一)
36. 用UNION替换OR (适用于索引列)通常情况下, 用UNION替换WHERE子句中的OR将会起到较好的效果. 对索引列使用OR将造成全表扫描. 注意, 以上规则只针对多个索引列有效. 如果有column没有被索引, 查询效率可能会因为你没有选择OR而降低. 在下面的例子中, LOC_ID 和REGION上都建有索引.高效: SELECT LOC_ID
2003-09-02 23:22:00
1245
原创 ORACLE SQL性能优化系列 (十)
31. 强制索引失效 如果两个或以上索引具有相同的等级,你可以强制命令ORACLE优化器使用其中的一个(通过它,检索出的记录数量少) . 举例: SELECT ENAMEFROM EMPWHERE EMPNO = 7935 AND DEPTNO + 0 = 10 /*DEPTNO上的索引将失效*/AND EMP_TYPE |
2003-08-29 07:40:00
1360
原创 ORACLE SQL性能优化系列 (九)
27. 基础表的选择 基础表(Driving Table)是指被最先访问的表(通常以全表扫描的方式被访问). 根据优化器的不同, SQL语句中基础表的选择是不一样的.如果你使用的是CBO (COST BASED OPTIMIZER),优化器会检查SQL语句中的每个表的物理大小,索引的状态,然后选用花费最低的执行路径.如果你用RBO (RULE BASED OPTIMIZ
2003-08-20 10:42:00
1355
原创 ORACLE SQL性能优化系列 (八)
25. 用索引提高效率 索引是表的一个概念部分,用来提高检索数据的效率. 实际上,ORACLE使用了一个复杂的自平衡B-tree结构. 通常,通过索引查询数据比全表扫描要快. 当ORACLE找出执行查询和Update语句的最佳路径时, ORACLE优化器将使用索引. 同样在联结多个表时使用索引也可以提高效率. 另一个使用索引的好处是,它提供了主键(primary key)的唯一
2003-08-12 22:13:00
1376
原创 ORACLE SQL性能优化系列 (七)
24. 用EXPLAIN PLAN 分析SQL语句 EXPLAIN PLAN 是一个很好的分析SQL语句的工具,它甚至可以在不执行SQL的情况下分析语句. 通过分析,我们就可以知道ORACLE是怎么样连接表,使用什么方式扫描表(索引扫描或全表扫描)以及使用到的索引名称.你需要按照从里到外,从上到下的次序解读分析的结果. EXPLAIN PLAN分析的结果是用缩进的格式排列的
2003-08-01 19:03:00
1182
原创 ORACLE SQL性能优化系列 (六)
20. 用表连接替换EXISTS 通常来说 , 采用表连接的方式比EXISTS更有效率 SELECT ENAME FROM EMP E WHERE EXISTS (SELECT ‘X’ FROM DEPT WHERE DEPT_NO
2003-08-01 19:00:00
1146
原创 用NOTEPAD攻克DATAWINDOW
Powerbuilder 的数据窗口(DATAWINDOW)是它的一大成就. 使用它可以很好地制作出各种不同类型的报表. 而且和各种数据库的连接也是相当的方便. 可是万物总有不完善的地方. 当你完成了一个精美的报表, 有时候,客户可能会提出一些格式上的修改,比如想从一种格式转换到另一种格式(比如从TABULAR到GRID). 这时候,你可能就头疼了,花了3个小时作的一个DATAWI
2003-07-31 09:55:00
1305
原创 ORACLE SQL性能优化系列 (五)
17. 使用表的别名(Alias)当在SQL语句中连接多个表时, 请使用表的别名并把别名前缀于每个Column上.这样一来,就可以减少解析的时间并减少那些由Column歧义引起的语法错误. (译者注: Column歧义指的是由于SQL中不同的表具有相同的Column名,当SQL语句中出现这个Column时,SQL解析器无法判断这个Column的归属) 18.
2003-07-29 08:17:00
1364
原创 ORACLE SQL性能优化系列 (四)
13. 计算记录条数 和一般的观点相反, count(*) 比count(1)稍快 , 当然如果可以通过索引检索,对索引列的计数仍旧是最快的. 例如 COUNT(EMPNO) (译者按: 在优快云论坛中,曾经对此有过相当热烈的讨论, 作者的观点并不十分准确,通过实际的测试,上述三种方法并没有显著的性能差别) 14. 用Where子句替换H
2003-07-24 14:03:00
1200
原创 ORACLE SQL性能优化系列 (二)
4. 选择最有效率的表名顺序(只在基于规则的优化器中有效)ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.当ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描第一个表(FROM子句中最后的那个表)并对记
2003-07-22 23:21:00
1367
原创 ORACLE SQL性能优化系列 (三)
8. 使用DECODE函数来减少处理时间 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表. 例如: SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0020 AND ENAME LIKE ‘SMITH%’; SELECT COUNT(*),SUM(SA
2003-07-22 23:19:00
1302
原创 AUTONOMOUS TRANSACTION(自治事务)的介绍
在基于低版本的ORACLE做一些项目的过程中,有时会遇到一些头疼的问题.,比如想在执行当前一个由多个DML组成的transaction(事务)时,为每一步DML记录一些信息到跟踪表中,由于事务的原子性,这些跟踪信息的提交将决定于主事务的commit或rollback. 这样一来写程序的难度就增大了, 程序员不得不把这些跟踪信息记录到类似数组的结构中,然后在主事务结束后把它们存入跟踪表.
2003-07-22 10:19:00
1107
原创 实用的数据库检查程序 (1)
功能:1. 数据库的基本信息显示(建库时间,模式等)2. 数据库结构信息-DATABASE MAP(CONTROL FILE, REDO LOG FILE, DATAFILE, ROLLBACK SEGMENT)3. 数据库所有状态信息4. 数据库级的DB Block Buffer Hit Ratio5. SESSION级的DB B
2003-07-22 07:58:00
1244
原创 实用的数据库检查程序(2)
Ttitle Off prompt ++++++++++++++++++++++++++++++++++ Item ++++++++++++++++++++++++++++++++++prompt + 3.0 Log Switch In the Last Day +prompt ++++++++++++
2003-07-22 07:58:00
1045
原创 实用的数据库检查程序(3)
promptprompt ++++++++++++++++++++++++++++++++++ Item ++++++++++++++++++++++++++++++++++prompt + 7.0 Sort Area Size +prompt +++++++++++++++++++
2003-07-22 07:58:00
974
原创 实用的备份PL/SQL程序工具
/*ligang1000@hotmail.com*/ 功能: 用于备份当前用户所拥有的所有PL/SQL objects (包括TYPE,TYPE BODY, PROCEDURE , FUNCTION, PACKAGE, PACKAGE BODY or JAVA SOURCE ) 原理: 对USER_SOURCE数据字典的调用,得到所有的PL/SQL 代码. 使用方法
2003-07-21 18:34:00
1232
原创 ORACLE SQL性能优化系列 (一)
1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL
2003-07-21 18:34:00
2570
原创 使用未写入文档参数"_ALLOW_RESETLOGS_CORRUPTION"进行崩溃恢复经典
什么情况可能使用该参数 有些时侯可能你的库处于非归档的模式下,而你的联机重做日志又currupted,你的数据文件不能 完成完全的恢复。而这时当你试图打开数据库时,oracle提示你用resetlogs选项,当你使用该选项 时oracle又不允许你使用该选项,总之你想打开数据库,可就是打不开。 1、最好做
2003-07-21 16:58:00
926
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人