Di SQL Server, Anda dapat mengetahui bahasa default untuk pengguna tertentu dengan menanyakan sys.server_principals
tampilan katalog sistem.
Tampilan ini berisi baris untuk setiap prinsipal tingkat server. Ini berisi informasi seperti nama prinsipal, jenis, tanggal pembuatan/perubahan, database default, bahasa default, dll. Prinsipal adalah entitas yang dapat meminta sumber daya SQL Server.
Seorang kepala sekolah dapat menjadi salah satu dari berikut ini:
Kepala sekolah tingkat Windows
- Login Domain Windows
- Login Lokal Windows
Prinsip tingkat SQL Server
- Masuk SQL Server
Kepala sekolah tingkat basis data
- Pengguna Basis Data
- Peran Basis Data
- Peran Aplikasi
Contoh Mengembalikan Bahasa Bawaan Kepala Sekolah
Untuk mendapatkan bahasa default untuk prinsip tertentu, Anda dapat menanyakan sys.server_principals
lihat dan gunakan WHERE
klausa untuk nama utama yang Anda minati.
Seperti ini:
SELECT type_desc, default_database_name, default_language_name FROM master.sys.server_principals WHERE name = 'sa';
Hasil:
+-------------+-------------------------+-------------------------+ | type_desc | default_database_name | default_language_name | |-------------+-------------------------+-------------------------| | SQL_LOGIN | master | us_english | +-------------+-------------------------+-------------------------+
Contoh ini mendapatkan bahasa default untuk sa
Kepala Sekolah. Nama utama adalah unik di dalam server. Contoh ini juga mengembalikan database default serta tipe utama. Dalam hal ini prinsipnya adalah Login SQL Server.
Berikut contoh lain menggunakan pengguna yang berbeda:
SELECT type_desc, default_database_name, default_language_name FROM master.sys.server_principals WHERE name = 'Bach';
Hasil:
+-------------+-------------------------+-------------------------+ | type_desc | default_database_name | default_language_name | |-------------+-------------------------+-------------------------| | SQL_LOGIN | Music | German | +-------------+-------------------------+-------------------------+
Dalam hal ini, login memiliki database dan bahasa default yang berbeda.
Tentu saja, Anda selalu dapat menggunakan tanda bintang untuk menampilkan semua kolom jika diperlukan.
Perhatikan bahwa setiap login dapat melihat nama loginnya sendiri, login sistem, dan peran server tetap. Untuk melihat login lain, perlu ALTER ANY LOGIN
, atau izin masuk. Untuk melihat peran server yang ditentukan pengguna, memerlukan ALTER ANY SERVER ROLE
, atau keanggotaan dalam peran.
Bahasa Default vs Bahasa Saat Ini
Dalam kebanyakan kasus, bahasa pengguna saat ini untuk sesi mereka akan menjadi bahasa default mereka. Namun hal ini tidak selalu terjadi, karena pengguna dapat mengubah bahasa saat ini dengan menggunakan SET LANGUAGE
penyataan. Ini akan mengubah bahasa untuk sesi saat ini, tetapi bahasa default mereka akan tetap apa pun itu.
Untuk mengetahui lebih lanjut, lihat Cara Menyetel Bahasa Saat Ini di SQL Server (T-SQL) dan 3 Cara untuk Mendapatkan Bahasa Sesi Saat Ini di SQL Server (T-SQL).