Berikut adalah beberapa metode T-SQL yang dapat Anda gunakan untuk mengembalikan nama server di SQL Server.
@@SERVERNAME
@@SERVERNAME
fungsi konfigurasi dirancang khusus untuk mengembalikan nama server lokal yang menjalankan SQL Server.
Untuk mendapatkan nama server, Anda cukup memilihnya menggunakan SELECT
pernyataan.
SELECT @@SERVERNAME;
Hasil di sistem saya:
mssql2019_1
Ini memberitahu saya bahwa nama server saya adalah mssql2019_1
.
PROPERTI SERVER(NamaServer)
SERVERPROPERTY()
fungsi metadata juga dapat digunakan untuk mengembalikan nama server, serta banyak properti lainnya.
Untuk mengembalikan nama server, Anda harus melewati ServerName
sebagai argumen.
SELECT SERVERPROPERTY('ServerName');
Hasil:
mssql2019_1
Dalam kasus saya, ini adalah output yang sama.
Perbedaan Antara Kedua Fungsi Ini
Kedua fungsi di atas menghasilkan keluaran yang sama pada mesin saya, tetapi Anda mungkin menemukan bahwa keduanya menghasilkan keluaran yang sedikit berbeda pada mesin Anda.
Kedua fungsi ini serupa, tetapi sedikit berbeda. Inilah perbedaannya:
@@SERVERNAME
memberikan nama server lokal yang saat ini dikonfigurasi.ServerName
property menyediakan server Windows dan nama instance yang bersama-sama membentuk instance server unik.
Jadi misalnya, pada sistem Windows, jika nama komputer Anda adalah Felix
, dan instance SQL Server Anda disebut sql1
, menjalankan SERVERPROPERTY('ServerName')
mungkin mengembalikan Felix\sql1
.
Nama Mesin &Nama Instance
SERVERPROPERTY()
fungsi juga dapat digunakan untuk mengembalikan nama mesin serta nama instance SQL Server.
Namun, hasil yang Anda dapatkan akan bergantung pada beberapa hal (disebutkan di bawah).
Inilah yang saya dapatkan di Mac saya yang menjalankan SQL Server untuk Linux melalui wadah Docker.
SELECT
SERVERPROPERTY('MachineName') AS MachineName,
SERVERPROPERTY('InstanceName') AS InstanceName;
Hasil:
+---------------+----------------+ | MachineName | InstanceName | |---------------+----------------| | mssql2019_1 | NULL | +---------------+----------------+
Pertama, MachineName
properti mengembalikan nama mesin. Penjelasan Microsoft adalah bahwa ia mengembalikan nama komputer Windows tempat instance server berjalan.
Microsoft juga menyatakan bahwa "Untuk contoh berkerumun, contoh SQL Server yang berjalan di server virtual di Layanan Cluster Microsoft, ia mengembalikan nama server virtual".
Sejauh InstanceName
properti berjalan, ia mengembalikan nama instance ke which
pengguna terhubung.
Namun, ia mengembalikan NULL
jika nama instance adalah instance default, jika input tidak valid, atau error.
Dalam kasus saya, nama instance adalah instance default dan saya mendapatkan NULL
.