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

Liệt kê tất cả các thủ tục được lưu trữ với tên lược đồ

SELECT [schema] = OBJECT_SCHEMA_NAME([object_id]),
  name
FROM sys.procedures;

hoặc

SELECT [schema] = SCHEMA_NAME([schema_id]),
  name
FROM sys.procedures;

Đối với một cơ sở dữ liệu cụ thể, trước tiên bạn có thể thay đổi ngữ cảnh cho cơ sở dữ liệu đó hoặc thay đổi một chút truy vấn của Marc (các truy vấn của tôi không tốt trong trường hợp này vì chúng dựa vào các hàm nhạy cảm với ngữ cảnh):

SELECT 
    SchemaName = s.name,
    ProcedureName = pr.name 
FROM 
    databasename.sys.procedures pr
INNER JOIN 
    databasename.sys.schemas s ON pr.schema_id = s.schema_id;

Nếu bạn muốn thực hiện việc này cho tất cả các cơ sở dữ liệu:

DECLARE @sql NVARCHAR(MAX) = N'';

SELECT @sql += N'
  UNION ALL SELECT db = N''' + name + ''', 
    s.name COLLATE Latin1_General_CI_AI,
    o.name COLLATE Latin1_General_CI_AI
  FROM ' + QUOTENAME(name) + '.sys.procedures AS o
  INNER JOIN ' + QUOTENAME(name) + '.sys.schemas AS s
  ON o.[schema_id] = s.[schema_id]'
FROM sys.databases
-- WHERE ... -- probably don't need system databases at least

SELECT @sql = STUFF(@sql, 1, 18, '') 
  -- you may have to adjust  ^^ 18 due to copy/paste, cr/lf, tabs etc 
  + ' ORDER BY by db, s.name, o.name';

EXEC sp_executesql @sql;

Các mệnh đề đối chiếu là cần thiết trong trường hợp bạn có cơ sở dữ liệu với các đối chiếu khác nhau.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao số lần đọc logic cho các hàm tổng hợp trong cửa sổ lại cao như vậy?

  2. Cách phát hiện nếu một giá trị chứa ít nhất một số trong SQL Server

  3. Gặp lỗi tự động tạo tệp cơ sở dữ liệu SQLExpress cho trang web sử dụng AspNetSqlMembershipProvider, nhưng chuỗi kết nối là với SQL Server 2005

  4. Kiểu dữ liệu dotNet gốc nào thích hợp nhất để truyền tải các giá trị SQL Server hierarchyId?

  5. Nhóm SQL Server AlwaysOn Av sẵn sàng:Cài đặt và Cấu hình. Phần 2