sp_dropserver和sp_addserver无法正常工作

sca*_*cci 11 sql-server sql-server-express sql-server-2008

我正在使用SQL Server Express 2008 R2,我想将实例名称从"机器名称"\ SQLEXPRESS2008R2更改为"机器名称".我跑了:

sp_dropserver 'old_name'

go

sp_addserver 'new_name', 'local'

go
Run Code Online (Sandbox Code Playgroud)

然后重新启动SQL服务.现在,当我看着

Select @@SERVERNAME --this is correct
Run Code Online (Sandbox Code Playgroud)

但这不正确?

Select serverproperty('ServerName') --This still shows old name
Run Code Online (Sandbox Code Playgroud)

因此,当我尝试通过SSMS连接到我的实例时,我仍然必须使用旧的实例名称进行连接,而不是我刚应用的新实例?我究竟做错了什么?新名称为什么不采用?

谢谢,

小号

RTh*_*mas 7

这是来自在线书籍:

虽然@@ SERVERNAME函数和SERVERPROPERTY函数的SERVERNAME属性可能返回格式相似的字符串,但信息可能不同.SERVERNAME属性自动报告计算机网络名称的更改.

相反,@@ SERVERNAME不报告此类更改.@@ SERVERNAME报告使用sp_addserver或sp_dropserver存储过程对本地服务器名称所做的更改.

第一条评论是正确的.您必须重新安装SQL才能将其更改为默认实例.

每个BOL,如果您使用命名实例更改计算机名称,则必须按如下方式使用:

sp_dropserver <'old_name\instancename'>
GO
sp_addserver <'new_name\instancename'>, local
GO
Run Code Online (Sandbox Code Playgroud)