求助,serverproperty无效,!!!

vickilin 2012-10-16 08:47:12
之前修改了计算机的名字,现在要做订阅发布,发现提示“sql server复制需要有实际的服务器名称才能连接到服务器……”在网上找了解决的方法:

用select @@servername和select serverproperty'servername'一查看,果然输出的结果不一样.后来我就用邹老大的解决方案改了一下
脚本是:
if serverproperty('servername') <> @@servername
begin
declare @server sysname
set @server = @@servername
exec sp_dropserver @server = @server
set @server = cast(serverproperty('servername') as sysname)
exec sp_addserver @server = @server , @local = 'LOCAL'
end
但是我执行上面的代码:提示“消息 207,级别 16,状态 1,第 1 行
列名 'serverproperty' 无效。”
请问是什么原因?
...全文
129 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
vickilin 2012-10-16
  • 打赏
  • 举报
回复
现在又有新的问题,就是这个语句在SQL2008里可以执行,但是在SQL2005下执行提示,“消息 15190,级别 16,状态 1,过程 sp_dropserver,第 56 行
仍有对服务器 'AS-PC\QHQ' 的远程登录或链接登录。
消息 15028,级别 16,状态 1,过程 sp_MSaddserver_internal,第 89 行
服务器 'LIN\QHQ' 已存在。”[Quote=引用 2 楼 的回复:]
select serverproperty ('servername')

楼主根本没按别人的代码执行。

你括号呢?这是函数。要括号才能用的。
[/Quote]
快溜 2012-10-16
  • 打赏
  • 举报
回复
函数使用错误。
vickilin 2012-10-16
  • 打赏
  • 举报
回复
跟这个没关系,那个db下,都可以执行!!![Quote=引用 1 楼 的回复:]
在哪个db 下执行?
需要在master 下吧?
[/Quote]
KevinLiu 2012-10-16
  • 打赏
  • 举报
回复
其实就是使用下面的命令执行的:

EXEC sp_dropserver '<old_name>'
GO
EXEC sp_addserver '<new_name>', 'local'
GO
vickilin 2012-10-16
  • 打赏
  • 举报
回复
你太聪明了,,就是这个错误!![Quote=引用 2 楼 的回复:]
select serverproperty ('servername')

楼主根本没按别人的代码执行。

你括号呢?这是函数。要括号才能用的。
[/Quote]
SQL77 2012-10-16
  • 打赏
  • 举报
回复
select serverproperty ('servername')

楼主根本没按别人的代码执行。

你括号呢?这是函数。要括号才能用的。
xuam 2012-10-16
  • 打赏
  • 举报
回复
在哪个db 下执行?
需要在master 下吧?

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧