选择显示字体大小

在access 中调用后台存储过程


  access是一个client/server的优秀前端开发工具,具有易学易用,界面友好,开发简单,和其他数据库接口灵活。但是,它要对大量数据处理时,速度比较慢。 深圳供电局现有60万用户,下面有6个营业所,通过64k ddn 和局相连,如果有一个营业所要对1万用户进行处理的话,要花2~3小时,严重影响其他业务的开展。所以,当有大量数据需要处理时,不能在client端处理,而必须在server端处理。 但access和server端之间多数通过odbc来连接,这样就增加了调用后台存储过程的难度。笔者通过在实际工作中长期的摸索,根据不同的业务需要,可以用下面三种方法去调用后台存储过程

  一、 access 向后台提交作业,这一个个作业对应一个个的存储过程。在sql server 6.5中,通过task manager 来建立相应的task; 而在oracle 8.0中,通过managing job queue 来建立相应的job。在access中,在job_list表中插入一个作业,这些作业一般每天晚上运行一次。这些作业对应的业务一般是需要处理非常大量数据,而实时性又是较低的,在我们的业务中比较典型的例子是每天晚上大量的电费计算。

  二、 在server端建立一些触发器(trigger),在access中激活这些触发器。在sql server 6.5 和oracle 8.0中,都是通过create trigger 来实现。在access中,根据不同的业务,通过插入、修改、删除记录来激活不同触发器。在我们的业务中一个例子是,当业务人员修改用户的电表读数后,激活计算电费的触发器,能立即重新计算该用户的电费。这样子,既可以和批量计算电费共享同一程序,不用在access端重新开发,有可以加快前端的响应速度。

  三、 以上二种方法,只可以说是间接调用后台存储过程access还提供一种直接调用的方法,可以用access 传递查询直接将命令发送到数据库服务器

  建立access 传递查询步骤如下:

  (1) 在数据库窗口中单击“查询”选项卡,然后单击“新建”按钮。

  (2) 在“新建查询”对话框中单击“设计视图”选项,然后单击“确定”按钮。

  (3) 在“显示表”对话框内单击“关闭”按钮。

  (4) 在“查询”菜单上,指到“sql 语句条件”,然后单击“传递”命令。

  (5) 在工具栏上,请单击“属性”按钮 以显示查询属性表。

  (6) 在查询属性表中,请设置“odbc 连接字符串”属性来指定要连接的数据库信息。可以输入连接信息: ”odbc;dsn=ntserver0;uid=sa;pwd=;database=bms”,或用“生成器”按钮生成。

  (7) 因存储过程不用返回记录,所以将“返回记录”属性设置为“否”。

  (8) 在“sql 传递查询”窗口中,输入传递查询: exec statistics。statistics 是sql server 数据库的一个存储过程

  (9) 关闭查询,保存查询为:stat_query。

  运行传递查询的方法有:

  (1) 用microsoft access的宏 openquery。

  (2) 用下面的事件过程:

private sub 统计_click()
dim dbs as database, qdf as querydef
dim tmq as dynaset
dim strsql as string

set dbs = currentdb
'打开上面建的传递查询stat_query
set qdf = dbs.openquerydef("stat_query ")
qdf.execute
set dbs = nothing
end sub

  这种方法在sql server 6.5 中实现完全没问题,在oracle 8.0中不能实现,错误信息为:ora-00900 invalid sql statement. 由于这种方法不需要一个中间的表去排队或激活后台存储过程,所以它的应用面就很广,凡是需要处理大量数据的业务,都可以放到server端去处理,如统计报表。

  通过以上三种方法,解决了access对大量数据处理速度慢的弱点,大大加大了深圳供电局数据处理能力。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons