[转载]游标不包括正在修改的表,或该表不能通过此游标更新 - xiaoli_zhou2011的日志 - 网易博客

[转载]游标不包括正在修改的表,或该表不能通过此游标更新 – xiaoli_zhou2011的日志 – 网易博客.

(asp)连接SQL2005时,SQL数据库名字不能改,改过以后就会报这样的错

错误一:
[Microsoft][ODBC SQL Server Driver][SQL Server]在 sys.servers 中找不到服务器 ‘anywolfs.com’。请验证指定的服务器名称是否正确。如果需要,请执行存储过程 sp_addlinkedserver 以将服务器添加到 sys.servers。

错误二:
[Microsoft][ODBC SQL Server Driver][SQL Server]未将服务器 ‘anywolfs.com’ 配置为用于 DATA ACCESS。

错误三:
[Microsoft][ODBC SQL Server Driver][SQL Server]此游标不包括正在修改的表,或该表不能通过此游标更新。

在asp中如果我使用rs.add和rs.update来添加数据就会报错误三,如果我使用insert into,就不会发生任何错误。在网上搜索半天,发现解决方法挺好用,方法如下:

解决:

如果是直接更换的服务器,那么主机名更换了,以前存在数据库的主机名也需要删除。进入SQL2005查询器
执行:

select @@servername
EXEC sp_dropserver @@servername
EXEC sp_addserver [new_name], local

第一行是查出老的实例名
第二行是删除老的实例名
第三行是 ‘new_name’ 是新的实例名,也就是当前计算机名,在重启一下sql2005服务,

执行完这一步,这时候如果asp会报错:

Microsoft OLE DB Provider for ODBC Drivers 错误 ‘80004005’
[Microsoft][ODBC SQL Server Driver][SQL Server]未将服务器 ‘anywolfs.com’ 配置为用于 DATA ACCESS。

需要设置模式,执行:
EXEC sp_serveroption ‘anywolfs.com’, ‘data access’, ‘true’

这时如果asp遇到:

[Microsoft][ODBC SQL Server Driver][SQL Server]此游标不包括正在修改的表,或该表不能通过此游标更新。
则需要再重启sql2005,

重 启后还是没有解决问题,那么可以使用sp_helpserver 查看有多少实例名,然后统统都给他删掉(sp_dropserver @@服务器名    来删除所有服务器),在执行 sp_addserver 等其他操作。或者重新运行一下上面的命令,重新做一遍,重启sql2005解决不了问题可以重启服务器看看。

我遇到的是错误3

先查询出来再全都删除,在创建

 

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏