WEB开发网
开发学院软件开发Delphi 谈用Access数据库做服务器 阅读

谈用Access数据库做服务器

 2006-02-04 13:48:02 来源:WEB开发网   
核心提示: 在下前段时间用Delphi做了一个单机版的软件,数据库用access,谈用Access数据库做服务器,开发过程比较顺利,怎知世事难预料, 这是我自己试验的结果,不知谁还有更好的方法,有天客户提出要在网络环境下运行此软件! 相信很多朋友都遇到此类问题,现在有3条路可以走

   在下前段时间用Delphi做了一个单机版的软件,数据库用access,开发过程比较顺利。怎知世事难预料,有天客户提出要在网络环境下运行此软件!

   相信很多朋友都遇到此类问题。现在有3条路可以走,一条是将Access数据库升级成SQL Server数据库,还有一条是仍然用Access,但使得它可以在网络上共享数据,第三条就是我们今天要讨论的,将Access改造成数据库服务器!

   我当时采用了最简单的办法,建议客户将此软件放在一个完全共享的文件夹里,哪台机器要用,就创建一个快捷方式。嘿嘿,此方法的最大好处就是不用我再动脑筋。

   后来我又想,能不能将Access数据库改造成类似于服务器的版本呢?

   这样做有如下好处:1、不用安装Windows Server版本及SQL Server版本,这些软件安装麻烦,价格昂贵,对机器的配置要求较高;2、客户端安装配置简便。

   我马上想到了MIDAS技术(现改名为DataSnap)。通过创建一个应用程序服务器,能不能将Access数据库改造成服务器版本呢?

   我马上动手试验改造。随便选一台机器做服务器(操作系统最好在WIN98或以上),用Socket连接方式,在上面放上Access数据库,运行一次用DataSnap技术改造的应用程序服务器软件,然后将客户端软件拷到另一台机器运行。

   这边有2点要注意:一是服务器上一定要先运行scktsrvr,这个程序Delphi有自带的,二是一定要将midas.dll文件拷到客户端的系统文件夹。

   结果却令我不解,客户端可以读出服务器上的数据,但却不能提交更改!

   原来的数据连接用的是Jet.OLEDB.4.0,记得我已前用BDE做测试时,连普通DBF文件都可以做服务器呢,问题会不会在这边?

   于是我在ODBC里配置了一个指向Access数据库的连接,然后用BDE的Database组件选择此数据库别名,重新测试。这一次,一切正常,成功了!

   剩下一个问题,就是BDE及ODBC的打包问题。这两个配置比较麻烦,可以用程序修改注册表来实现,但还有更简便的方法。现在很多安装工具都具备自动配置BDE及ODBC的功能,大家不妨选用这些工具打包。而且,由于采用多层数据库开发,只要在服务器上配置一遍就可以了,客户端只需一个额外的MIDAS.DLL文件。

   这是我自己试验的结果,不知谁还有更好的方法,望不吝赐教。

Tags:谈用 Access 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接