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

Trả về các tham số của một thủ tục được lưu trữ hoặc hàm do người dùng xác định trong SQL Server (ví dụ T-SQL)

Trong SQL Server, bạn có thể sử dụng PARAMETERS của Transact-SQL chế độ xem giản đồ thông tin hệ thống để tìm các tham số được sử dụng trong một thủ tục được lưu trữ hoặc chức năng do người dùng xác định.

Cụ thể hơn, nó trả về một hàng cho mỗi tham số của hàm do người dùng xác định hoặc thủ tục được lưu trữ mà người dùng hiện tại có thể truy cập trong cơ sở dữ liệu hiện tại.

Để sử dụng chế độ xem này, hãy chỉ định tên đủ điều kiện của INFORMATION_SCHEMA.PARAMETERS .

Ví dụ 1 - Cách sử dụng cơ bản

Dưới đây là ví dụ về việc trả lại thông tin về các tham số được sử dụng trong tất cả các thủ tục được lưu trữ và các hàm do người dùng xác định trong cơ sở dữ liệu hiện tại mà người dùng hiện tại có quyền truy cập.

SELECT 
  SPECIFIC_CATALOG AS [Database],
  SPECIFIC_SCHEMA AS [Schema],
  SPECIFIC_NAME AS [Table],
  PARAMETER_MODE AS [Mode],
  IS_RESULT,
  PARAMETER_NAME,
  DATA_TYPE
FROM INFORMATION_SCHEMA.PARAMETERS;

Kết quả:

+------------+----------+----------------------+--------+-------------+------------------+-------------+
| Database   | Schema   | Table                | Mode   | IS_RESULT   | PARAMETER_NAME   | DATA_TYPE   |
|------------+----------+----------------------+--------+-------------+------------------+-------------|
| Music      | dbo      | ISOweek              | OUT    | YES         |                  | int         |
| Music      | dbo      | ISOweek              | IN     | NO          | @DATE            | datetime    |
| Music      | dbo      | ufn_AlbumsByGenre    | IN     | NO          | @GenreId         | int         |
| Music      | dbo      | spAlbumsFromArtist   | IN     | NO          | @ArtistName      | varchar     |
| Music      | dbo      | uspGetAlbumsByArtist | IN     | NO          | @ArtistId        | int         |
+------------+----------+----------------------+--------+-------------+------------------+-------------+

Trong ví dụ này, tôi chọn chỉ trả về bảy cột từ chế độ xem. Ví dụ sau đây hiển thị tất cả các cột.

Ví dụ 2 - Trả lại Tất cả các Cột

Trong ví dụ này, tôi bao gồm tất cả các cột mà chế độ xem trả về. Tôi cũng sử dụng đầu ra theo chiều dọc để bạn không bị buộc phải cuộn theo chiều ngang. Ngoài ra, để ngắn gọn, tôi sử dụng WHERE để trả về thông tin chỉ về một hàm do người dùng xác định sử dụng một tham số (do đó, chỉ một hàng được trả về).

SELECT * 
FROM INFORMATION_SCHEMA.PARAMETERS
WHERE SPECIFIC_NAME = 'ufn_AlbumsByGenre';

Kết quả (sử dụng đầu ra dọc):

SPECIFIC_CATALOG          | Music
SPECIFIC_SCHEMA           | dbo
SPECIFIC_NAME             | ufn_AlbumsByGenre
ORDINAL_POSITION          | 1
PARAMETER_MODE            | IN
IS_RESULT                 | NO
AS_LOCATOR                | NO
PARAMETER_NAME            | @GenreId
DATA_TYPE                 | int
CHARACTER_MAXIMUM_LENGTH  | NULL
CHARACTER_OCTET_LENGTH    | NULL
COLLATION_CATALOG         | NULL
COLLATION_SCHEMA          | NULL
COLLATION_NAME            | NULL
CHARACTER_SET_CATALOG     | NULL
CHARACTER_SET_SCHEMA      | NULL
CHARACTER_SET_NAME        | NULL
NUMERIC_PRECISION         | 10
NUMERIC_PRECISION_RADIX   | 10
NUMERIC_SCALE             | 0
DATETIME_PRECISION        | NULL
INTERVAL_TYPE             | NULL
INTERVAL_PRECISION        | NULL
USER_DEFINED_TYPE_CATALOG | NULL
USER_DEFINED_TYPE_SCHEMA  | NULL
USER_DEFINED_TYPE_NAME    | NULL
SCOPE_CATALOG             | NULL
SCOPE_SCHEMA              | NULL
SCOPE_NAME                | NULL

Xem tài liệu Microsoft để biết thông tin về từng cột được trả về bởi dạng xem này.


  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ác loại con trỏ máy chủ SQL - Con trỏ tĩnh trong SQL Server là gì | Hướng dẫn sử dụng SQL Server / TSQL

  2. Khi nào tôi nên sử dụng ĐĂNG KÝ CHÉO qua THAM GIA INNER?

  3. SQL Server - Cách khóa bảng cho đến khi một quy trình được lưu trữ kết thúc

  4. SQL Server NẾU KHÔNG TỒN TẠI Sử dụng?

  5. Thay đổi kiểu do người dùng xác định trong SQL Server