最大记录数300万条(30分)

  • 主题发起人 主题发起人 ckylixj
  • 开始时间 开始时间
C

ckylixj

Unregistered / Unconfirmed
GUEST, unregistred user!
我用Delphi自己的桌面数据库PARADOX,速度很快,我往一张表中插入记录,大概用了5分钟
就插了300万条,可是程序提示数据库以满。难道PARADOX的一张表只可以存放300多万条记
录吗?
 
兄弟,Paradox本来就不适合大量数据的存取
你这样的测试并没有太大的意义
即使你可以存入400万条,又有何意义?
你查询试试,查出一条记录或者数条记录,看看需要多少时间
数据量不大的时候可以使用Delphi去操作Paradox
 
请教tows兄,那我要存取1000万条记录,我又不想用sql server,oracle等大型数据库。
那我该怎么办?还有我想知道PARADOX到底可以存储多少条记录。
还有我用DELPHI访问ACCESS的数据库很慢,有没有别的控件可以代替BDE,还有我想知道
ACCESS可以存放多少条记录?
谢谢!
 
老兄,你要用PARADOX存储1000万条记录?
那你可要小心了。我把我的教训告诉你。
我做了一个监控系统,基本资料数据量不大,就是有一个表,每秒都要保存查询状态,根
据系统的不同,每秒可能几条到几十条记录。就算按照比较低的配置来看,每秒加入数据
库是2、3条记录,那么一天需要添加记录大哟20万条左右,一个月大约就是600万条。开始
我用PARADOX做的,在我编程的调试中基本没有问题,不过有一个现象我忽视了,就是在我
调试中,程序可是死机,这时候我的PARADOX数据库就完蛋了,不能工作了,也就是说数据
库文件被破坏了,主要是索引文件,不过我有专门作了一个恢复程序,当数据库完蛋后,
就用恢复程序恢复。PARADOX并没有记录的限制,如果是受ID的限制,那也是20亿或40亿条
记录了,我算了一下,一个月600万,一年7000万,十年7亿,没有问题,于是就交给用户
使用。可是恶梦就来了,几乎每隔1、2个月,用户就找上门来,告诉软件不能用了,一查
就是数据库完蛋了,可恶是有时候连数据主文件也破坏了,根本无法修复,只能用一个新
的覆盖。这么几次后,客户也不干了,向公司投诉软件极不稳定,我也是有苦说不出,老
板又不管你是程序问题还是数据库问题,对他来说就是系统不稳定,客户投诉。问题在哪
里呢?就在数据库量太大,每时每刻都对数据库操作,当记录数很大时,PARADOX对系统稳
定性要求极高,同时自己也变得不稳定了,只要有任何风吹草动,就可能导致数据库崩溃,
我就背上黑锅了。痛定思痛,下决心把数据库改为SQL SERVER了,正好Delphi5出来了,支
持ADO(原来的是用Delphi4开发,用BDE),就用它了。改完后,给用户使用,终于没有再
频繁投诉,疲于维护了。不过,在运行了1年多后,客户还是找过来了,为什么?因为我们
的程序还有一个删除记录的功能,你想,这记录不能无限的增下去呀,SQL SERVER支持,
硬盘也没那么大呀。可是有次他们忘了删除了,知道某一天,系统不能用,才又上门来,
我一看,SQL SERVER中数据库变灰了,就是被破坏了,再一看,硬盘只剩下500K剩余空间
了,是K,不是M,唉,我又痛苦了一次,因为在SQL SERVER我没有对数据库的上限作限制。

老兄,不知你那1000万条是一次完成,还是跟我一样。如果一次完成,那就是效率问题。
如果跟我一样,就是稳定性问题。效率低点,高点问题不大,可以用好机器嘛,可是这稳
定性就是头等重要的大事。我的程序是实时监控的,24小时不停的运行,我基本上可以允
许他一年死个一两次,稳定性就算凑合。可是数据库完蛋,这是绝对不可以容忍的(而且
还不是客户自己的问题)。老兄,你就自己看用什么数据库吧,花上万买的和免费的肯定不
一样,就看你的需求,你的容忍度了。当初我用PARADOX最要的原因之一就是费用问题了,
要多出上万元呀。
 
那么大的数据量,换ORACLE才能运行自如。
反正有D盘
 
用MySQL算了,费用不高,性能可相当不错。
我自己用MySQL写了一个发票管理程序,除了功能上和Oracle或SQL Server有所差距以外,
但比Paradox等桌面型数据库要好多了(无论从速度还是从功能上比较)。
推荐版本为4.0以上,因为从新版本的MySQL支持事务处理(不能说这个功能用不上吧)。
 
泥用INTERBASE试试,6.5支持64G 的文件空间,性能不错啊
 

Similar threads

回复
0
查看
968
不得闲
回复
0
查看
1K
不得闲
S
回复
0
查看
825
SUNSTONE的Delphi笔记
S
S
回复
0
查看
755
SUNSTONE的Delphi笔记
S
后退
顶部