一个意想不到的BDE数据库问题

cmain83 2003-04-28 06:22:49
操作系统:Windows 2000 Server
数据库:BDE
数据查询、插入、删除操作控件:TQuery控件(SQL语言,所有操作全用SQL语言)

插入多条记录,退出程序。用DELPHI自带的Database Desktop打开表。数据已经成功的插入表中。
按键盘上的“Power”(电源)键关机。
重启电脑,再用Database Desktop打开表,在关机前插入的数据全部丢失了?????????
再运行程序,再插入记录。再用Database Desktop查看,记录已经成功插入。
点击“开始”--->“关机”--->“重启计算机”。
再用Database Desktop打开表,发现数据没有丢失。

如此问题,已另我想了一天,用了多种方法,还是没有解决。还请各位大侠相助。
分不是问题(分不够可再加)
...全文
43 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
耙子 2003-04-29
  • 打赏
  • 举报
回复
要是能彻底解决还要什么ups、热备份、荣灾容错系统了。
cmain83 2003-04-29
  • 打赏
  • 举报
回复
请问 zhang21cnboy(沧桑男人)
你是如何解决的?

能否告诉小弟?

TO: pazee(耙子)
难道就没有其它的方法了吗?
zhang21cnboy 2003-04-28
  • 打赏
  • 举报
回复
hoho,我曾经跟你一样郁闷!

不过现在不郁闷了!

耙子 2003-04-28
  • 打赏
  • 举报
回复
这个问题不难懂。
操作系统为了提高磁盘的性能,通常都会启动读写缓存,你的相关操作很多都是在这个缓存里面完成的。
如果你说的写数据库,其实只是写入了磁盘缓存,系统会在空闲或者必须的时候把数据真正的写入磁盘,所以计算机非正常关机是非常容易丢失数据的,因为fat的fat表也在内存,更容易数出现磁盘出现丢失数据的情况。

如果你是paradox数据库,可以用BDE的API,来强制每次把数据真正写入磁盘,但是这样也不能保住不丢失数据,因为文件系统也可能被破坏。

有益的办法是,尽可能采用NTFS替代FAT32,增加UPS

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧