您的位置:首页 > 数据库

删除sql server数据库中内容时出现的错误

2006-10-20 22:02 176 查看
环境:操作系统win2000pro,数据库sql sever 2000,编程vc6.0,ODBC,用类CRecordSet连结数据表。
症状一:在用CRecordSet::Delete()对表中内容进行删除时,出现“多行数据更新”的错误
原因:在数据表中有多行内容完全相同的行,在删除当前记录时,所有相同的项均被删除。
解决办法:在表中增中一个列表示序号,可由数据表自动增加序号,消失内容相同的行。

症状二:在出现症状一的情况下,再对数据表进行操作,由会出现“无当前记录,操作失败”的错误提示。
原因:在对表中行进行删除后,会调用CRecordSet::MoveNext()来跳过被删除的行,而因为多行相同行同时被删除,导致被删除的行不止一行,而具体删除了多少行又未知,因此调用一个MoveNext()只跳过一个被删除行,但此刻当前记录仍停在其它被删除的行上,因此其后再对表操作出现无当前记录的提示。
解决办法:只要消失了内容相同行的问题,则此问题迎刃而解。

CString的字符内容检查方法:
可调用CString:;GetAt(int index)来获得需要检查的位的字符。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐