34,838
社区成员




--执行下面的代码,将@@SERVERNAME的值修改为与SERVERPROPERTY('ServerName')一样即可。修改完成后,需要重新启动MSSQLSERVER服务使修改生效。
IF SERVERPROPERTY('ServerName')<>@@SERVERNAME
BEGIN
DECLARE @srvname sysname
SET @srvname=@@SERVERNAME
EXEC sp_dropserver @server=@srvname
SET @srvname=CAST(SERVERPROPERTY('ServerName') as sysname)
EXEC sp_addserver @server = @srvname , @local = 'LOCAL'
END
use master
GO
Declare @ServerName_New sysname,
@ServerName_Old sysname
/*=================輸入新的本地伺候器名稱 Start=============================*/
Set @ServerName_New=''
/*=================輸入新的本地伺候器名稱 End =============================*/
Set @ServerName_Old=@@SERVERNAME
If @ServerName_New=''
Set @ServerName_New= Convert(nvarchar(50),Serverproperty('MachineName'))+'\'+Convert(nvarchar(128),Serverproperty('InstanceName'))
If Isnull(@ServerName_New,'') =''
Begin
Raiserror 50001 N'新伺候器名稱不能為空!'
Goto ExitFlag
End
If @ServerName_New=@ServerName_Old
Begin
Print N'新舊伺候器名稱一樣,無需修改!'
Goto ExitFlag
End
If Exists(Select 1 From sys.servers Where name=@ServerName_Old)
Exec sys.sp_dropserver @ServerName_Old
If Exists(Select 1 From sys.servers Where name=@ServerName_New)
Exec sys.sp_dropserver @ServerName_New
Exec sys.sp_addserver @ServerName_New,'local'
ExitFlag:
GO