Code
服务器: 信息 7306、 级别 16,2,状态行 4
无法打开表"database name""dbo""。table name"从 OLE DB 提供程序 SQLOLEDB。 提供程序不支持行查找位置。 提供程序指示与其他属性或要求发生冲突。
[OLE/DB 提供程序返回消息: 多步骤 OLE DB 操作产生错误。 如果可用,请检查每个 OLE DB 状态值中。 不是完成任何工时]。
以上错误是在对视图进行更新和删除时出的错误
分析视图不能更新,首先检查下视图:
⑴若视图是由两个以上基本表导出的,则此视图不允许更新
⑵若视图的字段来自字段表达式或常数,则不允许对此视图执行INSERT和UPDATE操作,但允许执行DELETE操作
⑶若视图的字段来自集函数,则此视图不允许更新
⑷若视图定义中含有GROUP BY子句,则此视图不允许更新
⑸若视图定义中含有DISTINCT短语,则此视图不允许更新
⑹若视图定义中有嵌套查询,并且内层查询的FROM子句中涉及的表也是导出该视图的基本表,则此视图不允许更新
⑺一个不允许更新的视图上定义的视图也不允许更新
2 检查下联合主键有没有问题,比如说在删除或更新的时候,是不是用到了破坏视图主键索引的地方。
例:Delete from dbo.view where convert(varchar,colum1,111)=@date colum1为联合主键。这样的话
对视图进行更新删除时就会出错