这是因为你的表里存两个完全一样的行,所以SQL不能正确对删除的目标行进行定位
可以用SQL语句在查询分析器里删除,但执行时会将这些完全相同的行全部删除
所以为每一个表加一个自增标识列是良好的编辑习惯
这里有问题,sql语法有错误,修改成如下:
CString SqlStr = _T("SELECT FROM H_Send where RecordName =\'") + str + "\'";
RecordName 字段是字符串型的 应该用单引号括起来,比如 str为:美女,正确的sql语句应为:
SELECT FROM H_Send where RecordName = '美女' 而不应该是
SELECT FROM H_Send where RecordName = 美女
master 是属于系统数据库,它保存了当前服务器中的所有数据库的相关信息,如果你的系统中没有其他数据库的话,你找一台新装好的SQL服务器,把它的master数据库备份一个,然后还原到你电脑上,但是可能会引起路径等错误,最好就是重装一下,这样可以保证SQL的稳定运行。
恩,是这个原因,子表有外键连接到母表,使母表不能删除被引用了的母表你可以用级联删除的啊在定义子表外键约束的时候在最后加一句话alter table 表名 add constraint 约束名 foreign key(子表列名) references 目标名(母表列名) on delete cascade;
以上就是关于删除数据库表中空的一行时,d出这样一个错误,帮帮忙。全部的内容,包括:删除数据库表中空的一行时,d出这样一个错误,帮帮忙。、ACCESS数据库删除是报错:DB_E_ERRORSINCOMMAND,代码如下:在线急等谢谢了、求助 sql server 2000 删除数据表以后出问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)