Adodc1.Recordset.Delete adAffectAllChapters 怎么用
Adodc1.Recordset.Delete adAffectAllChapters 怎么用,是删除数据库中的所有记录吧,怎么执行了之后提示“实时错误'3219' 在此环境中不允许操作。”
If Adodc1.Recordset.BOF And Adodc3.Recordset.EOF Then Exit Sub
Adodc1.Recordset.Delete adAffectAllChapters
Adodc1.Recordset.UpdateBatch
Adodc1.Recordset.Requery
Adodc1.Refresh
[解决办法]
rs.delete
Delete 方法 (ADO Recordset)
删除当前记录或记录组。
语法
recordset.Delete AffectRecords
参数
AffectRecords AffectEnum 值,确定 Delete 方法所影响的记录数目,该值可以是下列常量之一。
常量 说明
AdAffectCurrent 默认。仅删除当前记录。
AdAffectGroup 删除满足当前 Filter 属性设置的记录。要使用该选项,必须将 Filter 属性设置为有效的预定义常量之一。
adAffectAll 删除所有记录。
adAffectAllChapters 删除所有子集记录。
说明
使用 Delete 方法可将 Recordset 对象中的当前记录或一组记录标记为删除。如果 Recordset 对象不允许删除记录将引发错误。使用立即更新模式将在数据库中进行立即删除,否则记录将标记为从缓存删除,实际的删除将在调用 UpdateBatch 方法时进行。(使用 Filter 属性可查看已删除的记录)。
从已删除的记录中检索字段值将引发错误。删除当前记录后,在移动到其他记录之前已删除的记录将保持为当前记录。一旦离开已删除记录,则无法再次访问它。
如果在事务中嵌套删除,可用 RollbackTrans 方法恢复已删除的记录。如果处于批更新模式,则可用 CancelBatch 方法取消一个或一组挂起删除。
如果因与基本数据冲突而导致删除记录失败(如记录已被其他用户删除),则提供者向 Errors 集合返回警告但不终止程序执行,只有在所有提出请求的记录上发生冲突时才会产生运行时错误。
如果 Unique Table 动态属性被设置,并且 Recordset 是对多个表执行 JOIN 操作的结果,那么,Delete 方法将仅删除 Unique Table 属性所命名的表中的行。
[解决办法]
Recordset的delete方法不支持以下两个选项:
adAffectAll 删除所有记录。
adAffectAllChapters 删除所有子集记录。
只能用循环一条一条删除所有记录。
http://msdn.microsoft.com/en-us/library/ms675261%28VS.85%29.aspx