通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务
当前位置:首页>>编程开发>>sql专区>>正文 新版上线![旧版]
注:打开慢时请稍等
oracle developer/2000 编程技巧六则

http://www.iyit.net  日期:2006-5-3 19:19:04  来源:  点击:
参加讨论】 ---- 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)。



编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:oracle8的分区管理
下一篇:oracle数据库系统使用经验六则
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
sql server 7.0与以前的版本相比,安全
设置proxy server和sql server实现互联
microsoft sql server 7.0安全问题   
mysql安全性指南(3)(转)           
mysql安全性指南 (2)(转)          
在frontpage 2000中插入flash动画
用frontpage 2000使图像“减肥”
提高frontpage 2002使用效率
用frontpage 2000创建网页动画
用frontpage 2000巧做样式表
用frontpage 2000制作鼠标光照特效
用frontpage轻松转换图片格式
frontpage10全透视教程(9)
frontpage10全透视教程(8)
frontpage10全透视教程(7)
sql server 7.0与以前的版本相比,安全
sql简明教程(6)
sql简明教程(5)
sql简明教程(4)
sql简明教程(3)
qq珊瑚虫外挂4.0版本发布!
多个广告位招商!
摄影后期系列一:1分钟为数码相片去红眼
qq挂机说明
asp进度条
photoshop通道抠图:给秀发飞扬的mm照
教您显示器亮度对比度的调节
新版上线,今日正式开通!!!
更多精彩图文广告等着您!
asp中使用sql语句教程
sql简明教程(1)
第二十章 开发delphi对象式数据管理功
sql简明教程(1)
vbscript和javascript互相调用 
jsp教程(四)-jsp actions的使用
操作系统被入侵后的修复过程
五一别忘电脑防毒 养成良好上网习惯
google对ie浏览器将捆绑搜索功能表担忧
新版上线,今日正式开通!!!
用photoshop创意图形“岁月”
摄影后期系列一:1分钟为数码相片去红眼

 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息