VB保存数据到ACCESS数据库时没有保存却在保存当时能查到被保存的数据是怎么回事(有时正确有时错误)?

wuyvhua 2007-08-17 02:58:11
我发现一个问题,不知你们有没有遇到过?这个问题不太好表述,请大家耐心听我说说:我是用VB6+ACCESS做程序的,同一些低码在程序中保存数据时却有时正确,有时却不正确。你也许会说,不正确时是什么提示,但我正是因为这个事担心,程序象正常工作一样,什么也不给你提示,如果你要查询你保存的这些数据,你也会查到他们。所以是否已经正确保存,你当时是不会知道的,因为程序看起来工作正常(被保存的数据也能查到,当然让你觉得正常)。但当你退出程序,关机后到第二天你再进入程序时,如果上次保存过程中是有问题的,你这时就会发现,你上一次保存的数据可能一点也没有了,就象昨天你什么也没做过一样。有时可能上次做了一天的工作,保存记录可能多达上千条,但再启动计算机时却没有了。对这个问题,我是查看了很多资料也没有找到原因,原来我以为是没有在事务处理语句后加上强制保存的参数,可是我加了后,还是有时候会出现,真得让我很是困惑,好象从VB4我就发现有这个问题,如果这个问题找不到原因,还真让我觉得这个VB系列的语言是不敢用的。如果你们有遇到过这个情况的一定不惜赐教。我的分数不多,等有了分我再多给,先解决问题要紧呀,毕竟我们都有在用呀.
...全文
443 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyvhua 2007-08-21
  • 打赏
  • 举报
回复
感谢VB老鸟!数据量大时会出现更新不保留的问题吗?你是否也遇到过呢?
Tiger_Zhao 2007-08-21
  • 打赏
  • 举报
回复
拾万以上的数据最好是转 SQL Server,实在不行就使将数据根据不同的逻辑分组(比如按年份、月份之类)将数据存放到不同的 mdb 中,减少单个 mdb 的记录数,因为通常数据只更新到年份最大的一个 mdb,这样即可以避免 mdb 数据量大时出现莫名其妙的错误(更新不保留就是典型一例)也能提高数据库性能。

唯一的麻烦是查询,原先一个查询就能完成的报表现在需要操作多个 mdb 才能完成,所以拆分 mdb 要充分考虑兼容报表的分组。针对还有一种辅助的方法是生成统计数据,比如在单独的一个 mdb 中将数据进行按月汇总,这样查询前只要将当前的汇总数据更新一下就可以很方便地查询了。

总的来说,原先没考虑数据量的问题的话,拆分 mdb 的工作量很大,所以最方便的是转 SQL SERVER。
wuyvhua 2007-08-21
  • 打赏
  • 举报
回复
请问VB老鸟:你说的拆分MDB应该怎么操作?我的数据库单个表最大的有35万条记录。
Tiger_Zhao 2007-08-20
  • 打赏
  • 举报
回复
对 mdb 做压缩和修复操作,如果数据量比较大,应该考虑拆分 mdb 了。
饮水需思源 2007-08-19
  • 打赏
  • 举报
回复
增加记录用:conn.execute "insert into tablename(...) values(...)"
修改记录用:conn.execute "update tablename set ... where ..."
删除记录用:conn.execute "delete from tablename where ..."
choovy123 2007-08-17
  • 打赏
  • 举报
回复
请重装ACCESS再试试看
wuyvhua 2007-08-17
  • 打赏
  • 举报
回复
谢谢你的提示。你说的写完整的UPDATE是指什么呀?比如我添加一条记录时
rs.add
....
rs.update
是这样吗?
你说这是个人写作习惯,我觉得不是,你看,程序编译好了以后就用,在用的过程中执行同一个地方时却有时会成功有时却不会成功。而且在保存后当时只要不重新启动计算机就还能查到,你也是搞开发的,你一定要注意这个事,看能否解决。
daisy8675 2007-08-17
  • 打赏
  • 举报
回复
不是说检查代码问题不问题。而是检查是否写完整update

按你那说法,那以前用access做应用怎么都没有人说出过这么严重的问题

而且我本身也用access开发过单机版本,也未出现这样的问题

我个人感觉是个人写作习惯问题产生
wuyvhua 2007-08-17
  • 打赏
  • 举报
回复
代码是没有问题的,因为大多时候还是能正常工作的,所以代码是没问题的。
daisy8675 2007-08-17
  • 打赏
  • 举报
回复
没有遇见这样的事情

检查自己代码,是否在关闭前做好update
vbman2003 2007-08-17
  • 打赏
  • 举报
回复
感觉这个问题和VB无关吧?我觉得可能是ACCESS自身的问题,你可以去ACCESS版问一下。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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