我用的是D7,现在一直在用ADO写数据库程序。只是ADO有那个恼人的“不能为更新定位行”的问题,所以想换一个好一点的数据库组件。
所以请大家推荐一下。谢谢
所以请大家推荐一下。谢谢
解决方案 »
- 根据一个数据表格式文件.CDX(VF)生成一个格式相同的新表
- 一个简单的多线程问题
- 如何改变控件的容器?
- EDIT1.TEXT从用户接受的内容如何放进ARR
- 一个奇怪的问题,救命啊!
- 广州市可以考BORLAND的证吗
- 我的一点疑问!我的一些构想!-------对校园信息管理系统感兴趣的朋友都来谈一下!
- 我决心从今天开始苦学DELPHI,请高手们多多关照。
- 如何设置richedit当前的光标到第一行(line0)?特急,up有分
- 哪里有InfoPower 3000 控件的下载?
- 我想用webbrowser模拟鼠标选择radio的第二项,请问怎么做。
- 串口MSComm读取内容不对,用ComPort.exe读取是正确的的十六进制,我下面写的程序有时候会把后面的截掉
这个问题和数据组件没有关系
可以打sql2000的sp4补丁
我经过很多次调试发现,只要是数据库内的内容和要更新的内容一致,在POST时就会出现这个错误。
我用ADOQuery的原生对象Recordset的update更新数据时也是这个问题。以前用Access时,我记得也是这样的。我每次更新前都仔细判断数据库里的内容和要更新进去的内容是否一致。
但总有忘记的时候,现在实在烦了这种重复性劳动。所以想换一种控件了。
通常要刷新下: adoquery.reQuery. 来处理下。
多数情况是因为你在多处修改同一记录集再有就是没有设置主键第三就是有的字段设置了默认值,在append,post时就会出这个错误,特别是一些数字型,和浮点型字段,我遇到过这个问题
ADOQuery1.Recordset.Update('CnName', VarArrayOf(['test']));
不是不一样,而是一样的情况下出现了那个错误……
而且我这个程序很特殊,需要像Excel那样移动着文本框来修改。不方便用Requery
绝对没有在多处修改。
---------
ID INTEGER PRIMARY KEY AUTO_INCREMENT
这样创建的算主键吗?
---------
是所有字段都设置了默认值,但除了空字符串('')就是0。这样会出问题吗?
但表的字段众多。一个个字段检查与要更新的数据是否一样。是很累的谢谢推荐请大家再推荐几个备用。
谢谢所有朋友的回复