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

PostgreSQL vs Oracle:Kiểm tra thời gian biên dịch của PL / pgSQL

Có, đây là một vấn đề đã biết.

PL / pgSQL (giống như bất kỳ hàm nào khác, ngoại trừ trên SQL ) là một "hộp đen" cho PostgreSQL, do đó không thực sự có thể phát hiện ra lỗi ngoại trừ trong thời gian chạy.

Bạn có thể làm một số điều sau:

  1. bọc hàm của bạn khi gọi SQL truy vấn vào BEGIN / COMMIT để kiểm soát tốt hơn các lỗi;
  2. thêm EXCEPTION khối vào mã của bạn để bắt và theo dõi lỗi. Tuy nhiên, lưu ý rằng điều này sẽ ảnh hưởng đến hiệu suất của chức năng;
  3. sử dụng plpgsql_check phần mở rộng , được phát triển bởi Pavel Stěhule, người là một trong những người đóng góp chính cho sự phát triển PL / pgSQL. Tôi cho rằng cuối cùng thì tiện ích mở rộng này sẽ trở thành cốt lõi của PostgreSQL, nhưng sẽ mất một thời gian (bây giờ chúng ta đang ở trạng thái 9.4beta3);
  4. Bạn cũng có thể xem xét câu hỏi liên quan này: kiểm tra cú pháp postgresql mà không cần chạy truy vấn

Và có vẻ như bạn đang rất cần một khung thử nghiệm đơn vị.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mảng chuỗi Ruby / Rails để chèn PostgreSQL

  2. Làm thế nào để thực hiện một SUM trên hai bảng không liên quan?

  3. Cách chuyển đổi chuỗi thành ngày trong PostgreSQL

  4. Cách hiển thị các ô OSM

  5. Làm cách nào để viết một truy vấn Django tính toán ngày tháng khi được thực thi dưới dạng PostGres SQL?