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

3 cách liệt kê tất cả các hàm trong PostgreSQL

Dưới đây là ba tùy chọn để liệt kê tất cả các chức năng trong cơ sở dữ liệu PostgreSQL.

information_schema.routines Xem

Dạng xem này chứa tất cả các hàm và thủ tục 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 (bằng cách là chủ sở hữu hoặc có một số đặc quyền).

Dưới đây là một ví dụ về việc trả về danh sách các hàm:

SELECT
    routine_name
FROM 
    information_schema.routines
WHERE 
    routine_type = 'FUNCTION'
AND
    routine_schema = 'public';

Trong ví dụ này, chỉ các chức năng với public lược đồ được trả về. Vui lòng bao gồm nhiều cột hơn nếu cần.

pg_proc Danh mục

pg_catalog.pg_proc danh mục lưu trữ thông tin về các hàm, thủ tục, hàm tổng hợp và các hàm cửa sổ.

Chúng ta có thể tham gia điều này bằng pg_catalog.pg_namespace danh mục để lọc kết quả thành chỉ các thủ tục có public không gian tên:

SELECT
    n.nspname,
    p.proname
FROM 
    pg_catalog.pg_namespace n
JOIN 
    pg_catalog.pg_proc p ON 
    p.pronamespace = n.oid
WHERE 
    p.prokind = 'f'
AND
    n.nspname = 'public';

Chúng tôi đã lọc thành một prokind trong tổng số f để giới hạn kết quả chỉ ở các chức năng bình thường.

Các giá trị có thể là f cho một chức năng bình thường, p cho một thủ tục, a cho một hàm tổng hợp, hoặc w cho một chức năng cửa sổ.

\df Lệnh

Khi sử dụng psql, chúng ta có thể sử dụng \df lệnh:

\df

Theo mặc định, điều này chỉ trả về các đối tượng do người dùng tạo. Ngoài ra, bạn có thể cung cấp một mẫu hoặc S sửa đổi để bao gồm các đối tượng hệ thống.

Dưới đây là một ví dụ về việc cung cấp một mẫu:

\df *key*

Ví dụ đó thu hẹp các kết quả chỉ còn các hàm / thủ tục đó bằng văn bản key nhân danh họ.

Lưu ý rằng lệnh này cũng trả về các thủ tục đã lưu trữ. Loại quy trình (ví dụ:func , proc ) được liệt kê trong một loại type trong đầu ra.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CHÈN VÀO ... TỪ CHỌN ... QUAY LẠI ánh xạ id

  2. Cách kết nối với máy chủ PostgreSQL từ máy ảo vagrant

  3. Cách duy trì dữ liệu trong cơ sở dữ liệu postgres dày đặc bằng cách sử dụng khối lượng

  4. Cân bằng tải PostgreSQL trong đám mây trở nên dễ dàng

  5. Đặt chuỗi trống ('') thành NULL trong toàn bộ cơ sở dữ liệu