用ado对SQLSERVER数据库操作,删除一条记录后查询提示“句柄引用了一个已被删除的行或标示为删除的行”

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用ado对SQLSERVER数据库操作,删除一条记录后查询提示“句柄引用了一个已被删除的行或标示为删除的行”相关的知识,希望对你有一定的参考价值。

删除操作完毕后我调用了Updata(),但是在查询时还是会出现此错误,跟代码是m_pRecordset->MoveNext移动游标时出错,请问有知道的吗?网上查了查都没有具体的原因啊
这个错误只有在删除一条记录后的查询出现,出现此错误后再次查询就没有错误,直到下一次删除记录操作后再出现。。。

在游标没有使用完的时候如果改变的游标的数据,就会报这个错!! 参考技术A 是不是ado控件属性有问题lockType

SqlServer——批量操作(批量添加,删除)

批量添加数据:

一条insert语句批量插入多条记录

常见的insert语句,向数据库中,一条语句只能插入一条数据:

insert into persons 

(id_p, lastname , firstName, city )

values(204,‘haha‘ , ‘deng‘ , ‘shenzhen‘);

(如上,仅插入了一条记录)

怎样一次insert插入多条记录呢?

 

使用示例:

insert into persons 

(id_p, lastname , firstName, city )

values

(200,‘haha‘ , ‘deng‘ , ‘shenzhen‘),

(201,‘haha2‘ , ‘deng‘ , ‘GD‘),

(202,‘haha3‘ , ‘deng‘ , ‘Beijing‘);

这样就批

据说,在程序开发中,一次插入多条数据,比逐次一条一条的插入数据,效率高很多

所以在程序开发的时候,使用此批量插入,也是比较不错的。

 

 

此语句在MySQL 5, postgreSQL 9.3执行通过。

量插入数据了, 遵循这样的语法,就可以批量插入数据了。

===================================================

批量删除数据:

delete from table where id in (xxxxxxxx) 

 

 

以上是关于用ado对SQLSERVER数据库操作,删除一条记录后查询提示“句柄引用了一个已被删除的行或标示为删除的行”的主要内容,如果未能解决你的问题,请参考以下文章

delphi+ado+sqlserver怎样在插入之后返回自增字段的值?

c#编写的代码用:linq和传统的ado.net哪个好,出错少,哪个更快,对服务器的负担最小

VB语言使用ADO连接操作SQLServer数据库教程

.NET基础操作回顾_使用ADO.NET操作SqlServer使用的类

ado.net entity framework无法更新数据库

由于C#中ADO.NET对Oracle的命名空间引用时提示过时,为此想用Linq对数据库的连接等操作(见补充)