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

Cách sử dụng thủ tục lưu trữ ‘sp_server_info’ trong SQL Server

Trong SQL Server, sp_server_info hệ thống lưu trữ thủ tục trả về một danh sách các tên thuộc tính và các giá trị phù hợp cho SQL Server, cổng cơ sở dữ liệu hoặc nguồn dữ liệu cơ bản. Nó trả về một tập hợp con thông tin do SQLGetInfo cung cấp trong ODBC.

Về cơ bản, nó cho phép bạn xem thông tin về SQL Server.

Cú pháp

Cú pháp như sau:

sp_server_info [[@attribute_id = ] 'attribute_id']

(Tùy chọn) @attribute_id đối số cho phép bạn thu hẹp kết quả chỉ thành một thuộc tính cụ thể.

Ví dụ 1 - Trả lại tất cả các thuộc tính

Trong ví dụ này, tôi thực hiện thủ tục được lưu trữ mà không chuyển bất kỳ đối số nào.

EXEC sp_server_info;

Nó cũng có thể chạy như thế này:

sp_server_info;

Đây là kết quả trên phiên bản SQL Server 2019 của tôi:

+----------------+------------------------+---------------------------------------------------------------------+
| attribute_id   | attribute_name         | attribute_value                                                     |
|----------------+------------------------+---------------------------------------------------------------------|
| 1              | DBMS_NAME              | Microsoft SQL Server                                                |
| 2              | DBMS_VER               | Microsoft SQL Server 2019 - 15.0.1800.32                            |
| 10             | OWNER_TERM             | owner                                                               |
| 11             | TABLE_TERM             | table                                                               |
| 12             | MAX_OWNER_NAME_LENGTH  | 128                                                                 |
| 13             | TABLE_LENGTH           | 128                                                                 |
| 14             | MAX_QUAL_LENGTH        | 128                                                                 |
| 15             | COLUMN_LENGTH          | 128                                                                 |
| 16             | IDENTIFIER_CASE        | MIXED                                                               |
| 17             | TX_ISOLATION           | 2                                                                   |
| 18             | COLLATION_SEQ          | charset=iso_1 sort_order=nocase_iso charset_num=1 sort_order_num=52 |
| 19             | SAVEPOINT_SUPPORT      | Y                                                                   |
| 20             | MULTI_RESULT_SETS      | Y                                                                   |
| 22             | ACCESSIBLE_TABLES      | Y                                                                   |
| 100            | USERID_LENGTH          | 128                                                                 |
| 101            | QUALIFIER_TERM         | database                                                            |
| 102            | NAMED_TRANSACTIONS     | Y                                                                   |
| 103            | SPROC_AS_LANGUAGE      | Y                                                                   |
| 104            | ACCESSIBLE_SPROC       | Y                                                                   |
| 105            | MAX_INDEX_COLS         | 16                                                                  |
| 106            | RENAME_TABLE           | Y                                                                   |
| 107            | RENAME_COLUMN          | Y                                                                   |
| 108            | DROP_COLUMN            | Y                                                                   |
| 109            | INCREASE_COLUMN_LENGTH | Y                                                                   |
| 110            | DDL_IN_TRANSACTION     | Y                                                                   |
| 111            | DESCENDING_INDEXES     | Y                                                                   |
| 112            | SP_RENAME              | Y                                                                   |
| 113            | REMOTE_SPROC           | Y                                                                   |
| 500            | SYS_SPROC_VERSION      | 15.00.1800                                                          |
+----------------+------------------------+---------------------------------------------------------------------+

Ví dụ 2 - Chỉ định một thuộc tính

Nếu chỉ quan tâm đến một thuộc tính, bạn có thể chuyển ID của thuộc tính đó. Làm điều này dẫn đến chỉ hàng của thuộc tính đó được trả về.

EXEC sp_server_info 500;

Nó cũng có thể được thực hiện như thế này:

sp_server_info 500;
sp_server_info @attribute_id = 500;
EXEC sp_server_info @attribute_id = 500;

Kết quả:

+----------------+-------------------+-------------------+
| attribute_id   | attribute_name    | attribute_value   |
|----------------+-------------------+-------------------|
| 500            | SYS_SPROC_VERSION | 15.00.1800        |
+----------------+-------------------+-------------------+

Trong ví dụ này, tôi trả về thuộc tính số 500, chỉ định phiên bản của các thủ tục được lưu trữ trong danh mục hiện được triển khai.

Ví dụ 3 - Chạy sp_server_info trên Máy chủ được Liên kết

Trong ví dụ này, tôi thực thi sp_server_info thông qua một truy vấn chuyển qua trên một máy chủ được liên kết có tên là Homer.

SELECT * FROM 
OPENQUERY(
  Homer,
  'EXEC sp_server_info 500'
);

Kết quả:

+----------------+-------------------+-------------------+
| attribute_id   | attribute_name    | attribute_value   |
|----------------+-------------------+-------------------|
| 500            | SYS_SPROC_VERSION | 14.00.3048        |
+----------------+-------------------+-------------------+

Ví dụ 4 - Chỉ định Cột nào được Hiển thị

Một lợi ích phụ của OPENQUERY() là bạn có thể giảm các cột được trả về bởi thủ tục được lưu trữ.

Ví dụ:

SELECT 
  attribute_name, 
  attribute_value
FROM 
OPENQUERY(
  Homer,
  'EXEC sp_server_info 500'
);

Kết quả:

+-------------------+-------------------+
| attribute_name    | attribute_value   |
|-------------------+-------------------|
| SYS_SPROC_VERSION | 14.00.3048        |
+-------------------+-------------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách thực thi Thủ tục được lưu trữ từ Laravel

  2. Bí quyết khôi phục các bản ghi đã xóa trong SQL Server

  3. Giới thiệu Tính năng mới - Báo cáo đám mây Spotlight

  4. Thêm tài khoản thư cơ sở dữ liệu vào hồ sơ (SSMS)

  5. Cách khắc phục “Không thành công câu lệnh ALTER TABLE SWITCH” Msg 4982 (SQL Server)