Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Nhận ngôn ngữ hiện đang được sử dụng trong SQL Server

Có một số cách để lấy ngôn ngữ hiện đang được sử dụng trong SQL Server.

Ngôn ngữ của phiên hiện tại thường sẽ là ngôn ngữ mặc định cho đăng nhập, nhưng điều này không nhất thiết phải luôn luôn như vậy. Người dùng có thể thay đổi ngôn ngữ hiện tại trong phiên.

Ngoài ra, một số hàm tích hợp của SQL Server chấp nhận một đối số cho phép bạn chỉ định ngôn ngữ cho truy vấn cụ thể đó.

Bài viết này hướng dẫn bạn cách trả lại ngôn ngữ hiện đang được sử dụng.

@@ NGÔN NGỮ

@@LANGUAGE chức năng cấu hình được tạo riêng để trả về tên của ngôn ngữ hiện đang được sử dụng.

Đây là một ví dụ về cách sử dụng.

SELECT @@LANGUAGE;

Kết quả:

us_english

Đây là ngôn ngữ mặc định cho đăng nhập của tôi.

Dưới đây là ví dụ về việc thay đổi ngôn ngữ trong phiên của tôi, sau đó chạy @@LANGUAGE một lần nữa.

SET LANGUAGE British;
SELECT @@LANGUAGE;

Kết quả:

British

DBCC USEROPTIONS

DBCC USEROPTIONS cũng cho phép bạn nhận ngôn ngữ hiện đang được sử dụng, cùng với một số tùy chọn cấu hình khác.

DBCC USEROPTIONS;

Kết quả:

+-------------------------+----------------+
 | Set Option              | Value          |
 |-------------------------+----------------|
 | textsize                | -1             |
 | language                | British        |
 | dateformat              | dmy            |
 | datefirst               | 1              |
 | lock_timeout            | 5000           |
 | quoted_identifier       | SET            |
 | arithabort              | SET            |
 | ansi_null_dflt_on       | SET            |
 | ansi_warnings           | SET            |
 | ansi_padding            | SET            |
 | ansi_nulls              | SET            |
 | concat_null_yields_null | SET            |
 | isolation level         | read committed |
 +-------------------------+----------------+  

Tôi đã chạy truy vấn đó ngay sau ví dụ trước và vì vậy nó vẫn trả về ngôn ngữ là tiếng Anh.

Cũng lưu ý rằng ngôn ngữ ảnh hưởng ngầm định đến dateformatdatefirst các giá trị. Giá trị mặc định cho các giá trị đó khi sử dụng us_englishmdy7 tương ứng.

Nếu tôi thay đổi ngôn ngữ trở lại us_English và chạy DBCC USEROPTIONS một lần nữa, bạn sẽ thấy rằng dateformatdatefirst cài đặt hoàn nguyên về định dạng Hoa Kỳ.

SET LANGUAGE us_English; 
 ....... DBCC USEROPTIONS;                                                       
 Time: 0.740s
 Changed language setting to us_english.
 +-------------------------+----------------+
 | Set Option              | Value          |
 |-------------------------+----------------|
 | textsize                | -1             |
 | language                | us_english     |
 | dateformat              | mdy            |
 | datefirst               | 7              |
 | lock_timeout            | 5000           |
 | quoted_identifier       | SET            |
 | arithabort              | SET            |
 | ansi_null_dflt_on       | SET            |
 | ansi_warnings           | SET            |
 | ansi_padding            | SET            |
 | ansi_nulls              | SET            |
 | concat_null_yields_null | SET            |
 | isolation level         | read committed |
 +-------------------------+----------------+ 

Tuy nhiên, bạn luôn có thể đặt định dạng ngày riêng biệt cho ngôn ngữ nếu bạn cần.

sys.dm_exec_requests

sys.dm_exec_requests chế độ xem cho phép bạn truy xuất ngôn ngữ cho một quy trình người dùng cụ thể. Trong trường hợp này, chúng ta có thể sử dụng @@SPID để chỉ định quy trình người dùng hiện tại.

SELECT r.language
FROM master.sys.dm_exec_requests r
WHERE r.session_id = @@SPID;

Kết quả:

us_english

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Giới thiệu Tính năng mới - Báo cáo đám mây Spotlight

  2. Làm cách nào để nhập tệp .bak SQL Server vào MySQL?

  3. Khắc phục “Lỗi tràn số học chuyển đổi int thành kiểu dữ liệu số” trong SQL Server

  4. Cách tốt nhất để lưu trữ thời gian (hh:mm) trong cơ sở dữ liệu

  5. Giám sát bộ đếm hiệu suất qua PERFMON | Khắc phục sự cố hiệu suất máy chủ SQL -3