• 网络学院
  • 新手学堂
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
ORACLE
广告位
  站点:
  • 首 页
  • 最新软件
  • 最新文章
  • 国内软件
  • 国外软件
  • 汉化软件
  • 源码下载
  • 字体下载
ORACLE Developer/2000 编程技巧六则
软件发布 ORACLE Developer/2000 编程技巧六则
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回首页 | 文章首页 | 数据库类 | Oracle | ORACLE Developer/2000 编程技巧六则

ORACLE Developer/2000 编程技巧六则

 

添加时间: 2006-2-23 7:04:09  作者: ORACLE教程  阅读次数:98   来源: http://www.d9soft.com

 

 

       

---- ORACLE 作为大型数据库管理系统,它强大而完善的数据管理功能吸引着越来越多的人们的注意。本人在oracle 系统开发中,就developer/2000编程有如下体会,希望能给初学者提供一些参考。
---- 一、使用设置菜单项属性及form 数据项属性限制不同用户的访问范围

---- 一个应用系统往往有不同的用户,比如: 一个劳资系统中,一个用户负责管理职工基本档案部分,另一个用户负责管理职工工资部分,管理职工基本档案的用户对职工档案只有查询的权限而不能有修改的权限。实现上述功能的一个简单的实现办法是:

---- 设置两个全局变量分别记录用户名和密码,在进入系统时,两个用户分别输入不同的用户名和密码,判断用户名,使SET_MENU_PROPERTY(MENU1,ENABLED,FALSE)语句设置没有查询权限的用户不能访问菜单项’MENU1’。

---- 二、提高表连接的查询速度

---- 在表连接查询时,常常用下列查询方法查询数据是:

SELECT RECORDNO,NAME,AGE

FROM 表1

WHERE 表1.RECORDNO NOT IN

(SELECT RECORDNO

FROM 表2

WHERE BIRTHDAY=’710618’);

---- 笔者发现,如果表1的长度为6000条记录,表2的长度为1000条记录, 则要4分钟才能出结果。原因是使用了比较运算符 NOT IN ,它的逻辑测试速度是最慢的。利用外连接替换NOT IN 运算符,查询时间则缩短为50秒。修改方法如下:

SELECT RECORDNO,NAME,AGE

FROM 表1,表2

WHERE 表1.RECORDNO=表2.RECORDNO(+)

AND 表2.RECORDNO IS NULL

AND 表2.BIRTHDAY(+)=’710618’;

---- 三、利用用库模块实现模块资源共享

---- 在编程中很多FROM 模块需要共用一个程序单元。ORACLE FORM 4.5提出了库模块的概念。使用库模块建立共享程序单元库,既减少了磁盘占用空间,又增加程序的可维护性。使用库模块共享程序单元的过程是:点击系统菜单的file-new-liberary选项,建立一库模块,在program units节点下增加一程序单元, 写入需共享程序的单元编码, 编译后存盘。当FORM模块需共享时,在模块的Attached Libraries节点下连接库模块(此时屏幕会提示是否要删除路径,用户选择NO)。这样,用户便可在FORM模块中直接使用共享程序单元了。

---- 四、易导致查询数据错误的原因

---- 在执行数据查询时,经常发现查询结果与预想的不同,主要原因是:

---- 1.使用 SELECT * FROM <表名> WHERE <字段名> LIKE ’%’ 语句查询不出 <字段名>为NULL的字段。此时需对字段为NULL的情况另外处理。如:SELECT * FROM <表名> WHERE <字段名> LIKE ’%’ OR <字段名> IS NULL

---- 2.使用union 字段连接各表时,连接顺序不是按书写的先后顺序,而是按连接表的第一个字段排序。因此,为了使表按预想的顺序连接,需在各表中插入第一字段指定排序序号。

---- 五、使用视图组织报表数据简单且易于维护

---- ORACLE REPORT2.5提供了多种报表格式,但在报表中定义各种统计信息不仅繁琐而且不利于今后的维护,使用视图预先将各种统计、汇总数据准备好,可以起到事半功倍的作用,一旦数据源有所调整,只需修改后台视图,而不用再改前端程序了。

表1结构为: UNIT NAME RECORENO SEX

办公室 王五 1 男

财务科 李四 2 女

.. .. .. ..

---- 1. 首先建立视图对数据进行汇总:

CREATE VIEW RYTJ (UNIT, BOY,GIRL)

AS SELECT UNIT, SUM(DECODE(SEX,’男’

,1,0)) , SUM(DECODE(SEX,’女’,1,0) )

FROM 表1;

---- 2. 使用 ORACLE REPORT 2.5 对视图’RYTJ’建立报表。

---- 六、 给报表加序号的简单办法

---- ORACLE REPORT 2.5 没有提供加序号功能,使用下述简单方法可实现给报表自动加序号:在数据模板中, 向查询组中加入一个公式列 CF_XH NUMBER(4), 赋初值为0, 点击[EDIT] 按钮, 插入编码RETURN(:CF_CH+1)。

 

 

 

上下文章:

 

上一篇文章: 提高ORACLE数据库的查询统计速度(1) 下一篇文章: ORACLE8的分区管理

相关文章:

  • Photoshop技巧:让模糊照片变清晰
  • 在ORACLE的存储过程中如何做简单的动态查询
  • Oracle下调数据库许可价格以适应多芯CPU
  • Oracle全球客户支持副总裁汤姆·舒尔滋演讲
  • Oracle中国前员工述说公司高层内部纷争史

相关软件:

  • 易语言汉语编程环境 V4.10
  • 超想中文汇编编程学习系统(中英对照版) V3.0
  • OptionsOracle V1.3.1
  • VFP完全控制大、中、小型数据库编程接口 V12.0
  • 超想CLOGO汉语编程系统 V1.00
  • 2006年度巨献电脑知识及技巧大合集 EXE格式

 

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

数据库类分类导航

  • SQL Server
  • MySQL Server
  • DB2
  • Oracle
  • ACCESS
  • Foxpro
  • PowerBuilder
  • Sybase

本类经典文章推荐

  • Oracle中使用PL/SQL操作COM对象
  • Oracle复合数据类型(1)
  • Oracle复合数据类型(2)
  • Oracle复合数据类型(3)
  • Oracle复合数据类型(4)
  • Oracle复合数据类型(5)
  • 数据库设计三大范式应用实例剖析
  • Oracle数据库的备份及恢复策略研究
  • Oracle入门心得(2)
  • Oracle的入门心得(1)

Oracle阅读排行

  • Oracle数据库的空间管理技巧
  • Oracle中导入文本数据的方法
  • Oracle复合数据类型(1)
  • 浅析Oracle和SqlServer存储过程的...
  • Oracle复合数据类型(3)
  • Oracle复合数据类型(2)
  • oracle 10g常见问题精选
  • Oracle中使用PL/SQL操作COM对象
  • Oracle入门心得(2)
  • Oracle复合数据类型(4)

数据库类阅读总排行

  • MySQL中的SQL-- TEXT、DATE、和SE...
  • MYSQL初学者使用指南 上篇
  • 怎样在vc、delphi中使用mysql(mys...
  • MySQL数据导入与导出之二
  • SQL Server数据库技术(96)
  • MYSQL初学者使用指南 下篇
  • SQL Server数据库技术(98)
  • SQL Server数据库技术(60)
  • 精通数据库系列之入门-基础篇
  • 如何把ACCESS的数据导入到Mysql中

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有