之前我的计算机名是个很长的字符串'WWW-91F7456549464',我就把他改成了 tiger,之后在写一个odbc 的程序时,出现下述错误
错误一:
[Microsoft][ODBC SQL Server Driver][SQL Server]在 sys.servers 中找不到服务器 'tiger'。请验证指定的服务器名称是否正确。如果需要,请执行存储过程 sp_addlinkedserver 以将服务器添加到 sys.servers。
错误二:
[Microsoft][ODBC SQL Server Driver][SQL Server]未将服务器 'tiger' 配置为用于 DATA ACCESS。
错误三:
[Microsoft][ODBC SQL Server Driver][SQL Server]此游标不包括正在修改的表,或该表不能通过此游标更新。
解决办法:
主机名更换了,以前存在数据库的主机名也需要删除。进入SQL2005查询器
执行:
1. sp_helpservers --查看所有的服务器名
2 EXEC sp_dropserver 'WWW-91F7456549464','droplogins'
3 EXEC sp_addserver 'tiger','local'
第 1 是查出老的实例名
第 2 是删除老的实例名
第 3 是 'tiger'是新的实例名,也就是当前计算机名,在重启一下sql2005服务,
执行完这一步,这时候会报错:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server]未将服务器 'tiger' 配置为用于 DATA ACCESS。
需要设置模式,执行:
4 EXEC sp_serveroption 'tiger' , 'data access', 'true'
之后重启数据库服务器,正常了.......