2011-07-29 36 views
10

Có cách nào để truy xuất chủ sở hữu giản đồ của một quy trình lưu trữ từ bên trong quá trình triển khai không?Nhận tên lược đồ của thủ tục hiện đang thực hiện lưu trữ

Các procs được lưu trữ là World.Perform_TaskUniverse.Perform_Task. Khi thủ tục được lưu trữ được thực hiện, tôi cần lấy tên của lược đồ để thực hiện một số nhiệm vụ mức lược đồ và cũng tìm kiếm các đối tượng (bảng, cột, v.v.) trong lược đồ đó.

Tôi đã thử Schema_Name() nhưng nó trả về lược đồ mặc định của người dùng đã đăng nhập (là dbo) không phải là chủ sở hữu lược đồ của quy trình được lưu trữ.

Làm cách nào để lấy giản đồ của quy trình lưu trữ thực thi?

Trả lời

15

Ở đây bạn đi ...

OBJECT_SCHEMA_NAME(@@PROCID) 

Liên kết đến MSDN:

Trả về tên schema cơ sở dữ liệu cho các đối tượng schema-scoped

Trả về nhận dạng đối tượng (ID) của mô-đun Transact-SQL hiện hành.

+0

Xin cảm ơn, Nó hoạt động tốt. – AlterWorld

Các vấn đề liên quan