Có cách nào để truy vấn cơ sở dữ liệu và truy xuất danh sách tất cả các thủ tục được lưu trữ và tham số của chúng không?
Tôi đang sử dụng SQL Server 2000.Làm cách nào để có danh sách tất cả các thủ tục được lưu trữ và thông số của chúng bắt đầu bằng một tiền tố nhất định?
10
A
Trả lời
26
Để có được thông tin về các thủ tục lưu trữ:
SELECT * FROM INFORMATION_SCHEMA.ROUTINES
Để tìm sprocs bắt đầu với một tiền tố nhất định (ví dụ: "USP"):
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_NAME LIKE 'usp%'
Để tìm tất cả thông số cho quy trình được lưu trữ:
SELECT * FROM INFORMATION_SCHEMA.PARAMETERS WHERE SPECIFIC_NAME='YourSprocName'
Để tìm tất cả các thông số cho tất cả các thủ tục lưu trữ bắt đầu với một tiền tố nhất định:
SELECT * FROM INFORMATION_SCHEMA.PARAMETERS WHERE SPECIFIC_NAME LIKE 'usp%'
4
thử cái này:
select o.name,p.name from sys.all_parameters p inner join sys.all_objects o on p.object_id = o.object_id
where o.type = 'P'
-1
truy vấn sau trả về thủ tục, chức năng và các bộ lọc bằng một tiền tố. Tôi không chắc chắn mặc dù, nếu nó sẽ làm việc trên máy chủ sql 2000. Tôi để nó ở đây tham chiếu anyway, bởi vì nó là một truy vấn hữu ích tốt.
SELECT SCHEMA_NAME(SCHEMA_ID) AS [Schema],
SO.name AS [ObjectName],
SO.Type_Desc AS [ObjectType (UDF/SP)],
COALESCE(P.parameter_id,0) AS [ParameterID],
COALESCE(P.name, 'NO PARAMETER') AS [ParameterName],
COALESCE(TYPE_NAME(P.user_type_id),'') AS [ParameterDataType],
COALESCE(P.max_length,0) AS [ParameterMaxBytes],
COALESCE(P.is_output,0) AS [IsOutPutParameter]
FROM sys.objects AS SO
LEFT OUTER JOIN sys.parameters AS P
ON SO.OBJECT_ID = P.OBJECT_ID
WHERE SO.OBJECT_ID IN (SELECT OBJECT_ID
FROM sys.objects
WHERE TYPE IN ('P','FN'))
AND SO.NAME LIKE 'U%' --starting with a certain prefix
ORDER BY [Schema], SO.name, P.parameter_id
GO
1
Để hiển thị một danh sách của tất cả các thủ tục và các thông số của họ, nó sẽ là như thế này:
SELECT o.name AS [Procedure name], p.name as [Parameter name]
FROM sys.parameters p INNER JOIN sysobjects o ON p.object_id = o.id
WHERE o.name LIKE 'prefix%' AND o.xtype = 'P'
Nó hoạt động trong SQL Server 2016 nhưng tôi đoán nó hoạt động trong phiên bản cũ quá.
Các vấn đề liên quan
- 1. C#/SQL Lấy tất cả các thủ tục được lưu trữ và mã số của chúng
- 2. Cách đơn giản để lập trình có được tất cả các thủ tục được lưu trữ
- 3. Danh sách các thủ tục được lưu trữ từ Bảng
- 4. Làm cách nào để có danh sách các lệnh bắt đầu bằng một khóa (combo) nhất định trong Emacs?
- 5. Làm thế nào để xác định tất cả các thủ tục lưu trữ tham chiếu đến một bảng cụ thể
- 6. Làm cách nào để chuyển danh sách được phân tách bằng dấu phẩy sang một thủ tục được lưu trữ?
- 7. Làm cách nào để tìm tất cả các thủ tục được lưu trữ chèn, cập nhật hoặc xóa bản ghi?
- 8. Làm cách nào để gọi thủ tục được lưu trữ với các tham số độc đáo?
- 9. Làm thế nào để có được tất cả các yếu tố mà tên bắt đầu bằng một số chuỗi?
- 10. Lấy danh sách tham số từ một SQLDataSource được lưu trữ Thủ tục tên
- 11. Làm thế nào tôi có thể lấy danh sách tham số từ thủ tục được lưu trữ trong SQL Server
- 12. Mẫu lưu trữ với các thủ tục được lưu trữ
- 13. Cách Pythonic để tìm tiền tố chung dài nhất của danh sách danh sách là gì?
- 14. Lấy danh sách các thủ tục được lưu trữ đã lọc bằng t-sql
- 15. Làm thế nào để gọi Thủ tục lưu trữ (với 2 tham số) trong một thủ tục lưu trữ?
- 16. Kiểm tra thủ tục và lưu trữ thủ tục bằng cách sử dụng Nunit
- 17. Danh sách truy vấn MongoEngine cho các đối tượng có thuộc tính bắt đầu bằng tiền tố được chỉ định trong danh sách
- 18. Làm thế nào để lưu một thủ tục lưu trữ?
- 19. Làm thế nào để lấy danh sách tất cả kho lưu trữ github của một người?
- 20. Nhận danh sách tất cả các tiền tố của một chuỗi
- 21. Làm thế nào để thay đổi tên schema của một bảng trong tất cả các thủ tục lưu trữ
- 22. Thả tất cả các thủ tục được lưu trữ trong MySQL hoặc sử dụng các thủ tục được lưu trữ tạm thời
- 23. Bắt tham số đầu ra thủ tục lưu trữ với LINQ và Entity Framework
- 24. Tôi có thể đặt giản đồ mặc định cho một thủ tục được lưu trữ không?
- 25. Đi qua một "trong" danh sách thông qua thủ tục lưu trữ
- 26. Làm cách nào để hợp nhất tất cả các thành phần của danh sách trong R?
- 27. Có cách nào để chạy một thủ tục được lưu trữ tại các khoảng được xác định trước không?
- 28. Làm cách nào để lưu một thủ tục được lưu trữ trong SQL Server 2008 R2?
- 29. Thủ tục lưu trữ Firebird để ghép tất cả các giá trị trường từ nhiều hàng
- 30. Gọi thủ tục lưu trữ trong một thủ tục được lưu trữ trong MySQL
+1. Tuy nhiên, điều về tiền tố được yêu cầu. – AxelEckenberger
Tôi có nên thay đổi WHERE SPECIFIC_NAME = ... thành LIKE "MyTable_ *" không? –
Đã cập nhật câu trả lời của tôi với 2 ví dụ khác, để tìm kiếm theo một tiền tố nhất định. – AdaTheDev