Menggunakan SQL Server 2008 R2 Enterprise Edition
Pertimbangkan pernyataan berikut:
:setvar source_server_name "SERVERNAME\INSTANCENAME"
Apakah mungkin dalam mode SQLCMD untuk mendapatkan nilai itu menggunakan TSQL
Sesuatu seperti: :setvar source_server_name = SELECT @@servername
Terima kasih
Pembaruan 7/15/2013
Dua jawaban yang ditawarkan di bawah ini tidak cukup memberikan hasil yang diinginkan, jadi saya menambahkan contoh yang lebih relevan.
:setvar source_server_name [myserver]
Source_server_name variabel diatur ke string teks [myserver_1]
Saya ingin dapat melakukan ini:
create table #tmp(
id int identity(1,1),
server sysname
)
insert into #tmp values('myserver_1'),('myserver_2');
:setvar source_server_name = SELECT server FROM #tmp WHERE id = 1
select '$(source_server_name)'
(No column name)
myserver_1
Source_server_name variabel akan diatur ke nilai di server untuk id 1.