我现在开发一个系统,用的远程数据库是SQL Server,需求要求我在本地另做
一套数据,我用类似公文包的形式解决了。但是有几个缺点:
1、不稳定,万一程序异常中断,有可能再也打不开本地文件,还得重新再Down数据。
2、不支持SQL,在做一些复杂查询的时候,麻烦不说,速度也慢。
现本人想用一个本地数据库来替代它,但有几个疑问:
1、ACCESS是最方便的,但不支持大数据量。我的程序最后的数据量要超过200M,不知道
哪位有实践经验,知道ACCESS2000可支持多大的数据量和多少条记录?
2、如果用InterBase,是否需要象BDE一样打包数据库引擎?如何打包?
3、有没有其他的支持SQL的本地型数据库,并且不需要象BDE一样打包数据库引擎,而象ADO一样只拷贝数据库文件即可?
用dbExpress作为数据库驱动程序
数据库利用MySQL或者Paradox
本地数据库,我用的是Paradox,但是要BDE。对本地数据库的操作,如果是
用TQuery查询,BDE会产生一个临时文件。此时,如果查询的结果有很多纪
录,由于产生临时文件会很慢。所以查询的结果有很多纪录时,用TTable,
不要用TQuery.
interbase是一个很好的中型数据库,速度快,而且BCB可以直接驱动它,不需要BDE。
可以考虑。
为什么不考虑用Sybase的Adaptive server anywhere,这是一个支持sql语句的本地型数据库,他的数据都在你自己命名的一个数据文件中,可以通过odbc连接。
InterBase不错,本身是网络数据库,但又比较小。
一般我比较喜欢用Interbase作小应用,用oracle作商业开发。
用SYBASE的单机版吧。SQL ANYWHERE ,就只拷数据库文件就可以了。
我是一个CODER也是一个ERP的使用者,我先想问你,你的远程与本地是使用什么连接的,如果是使用ISDN或MODEM这样的东东,你就要小心了,你的本地数据很容易就要让他传送好几天的。你不但要考虑速度还要考虑文件的大小。我建议使用ACCESS这个东东,发布起来非常容易。
我现在开发一个系统,用的远程数据库是SQL Server,需求要求我在本地另做
一套数据,我用类似公文包的形式解决了。但是有几个缺点:
1、不稳定,万一程序异常中断,有可能再也打不开本地文件,还得重新再Down数据。
Q:猜测不稳定主要是数据太大保存时时间长 万一发生异常
我想把数据分成10M一块块
2、不支持SQL,在做一些复杂查询的时候,麻烦不说,速度也慢。
Q:用ADOQuery的SaveToFile()方法,有XML格式和TXT格式
按理能支持SQL查询
现本人想用一个本地数据库来替代它,但有几个疑问:
1、ACCESS是最方便的,但不支持大数据量。我的程序最后的数据量要超过200M,不知道
哪位有实践经验,知道ACCESS2000可支持多大的数据量和多少条记录?
Q:我做过用来猜测奖票的有250M大小运行起来确实慢了
一万条记录是ACCESS的上限,但也能运行
2、如果用InterBase,是否需要象BDE一样打包数据库引擎?如何打包?
Q: 不要BDE引擎,但是好象是服务器版本,我没做过把服务器打包的
不知它的本地版是不是桌面的
3、有没有其他的支持SQL的本地型数据库,并且不需要象BDE一样打包数据库引擎,而象ADO一样只拷贝数据库文件即可?
Q:太简单了你不是有SQL SERVER 吗?为什么不装到你的机器中去了
这不是什么问题都解决了吗!!!
如果你说每个人都有这样的要求??
Q:如果他们的配置不低的话可以使用SQL SERVER 的同步复制功能
总结:
用户的要求是个矛盾, 不能把200M的数据放到本地中进行复杂的查询
不知是不是有要返回给远程服务器和移动要求?
YES-> 就要减小数据量 XML方式
NO-> 不如叫他在远程服务器把工作做完
我也有着方面的需求,想使用access,因为操纵sql以及本身功能比较强,但是access本身有一个很大的缺点,当多次删除,添加记录时数据库就会变大,不能删除物理内存。各位大哥多发表点意见
Q:压缩
interbase 没问题,我作过上2G的数据,几百万条记录。
将你用到的别名打包就可。
用INTERBASE不错。你可以设立一个IB服务器作为SQL SERVER的备份。客户端IB只要安装三个文件就可以了。