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

các chức năng và giao dịch postgres với BEGIN

Câu trả lời theo số:

  1. Không; if S2 không thành công, toàn bộ giao dịch bị hủy bỏ và chỉ có thể được khôi phục lại.

  2. Có lẽ có một sự hiểu lầm. Câu lệnh SQL BEGIN bắt đầu một giao dịch khác với BEGIN bắt đầu một khối PL / pgSQL. Cái sau không không bắt đầu giao dịch.

    Nếu không có lệnh SQL rõ ràng BEGIN , mọi câu lệnh chạy trong giao dịch của chính nó (“autocommit”).

    Tất cả các câu lệnh trong một hàm được thực thi trong một giao dịch duy nhất.

  3. Bạn không thể có COMMIT (hoặc ROLLBACK ) trong một hàm.

  4. Đúng. Đây là câu hỏi tương tự như 1., chỉ ở câu phủ định.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. (var) char làm kiểu cột cho hiệu suất?

  2. Nhóm SQL theo phạm vi ngày

  3. Các hàng có bị khóa theo thứ tự trong câu lệnh SELECT ... ORDER BY ... FOR UPDATE không?

  4. Cách liệt kê tất cả cơ sở dữ liệu bằng PostgreSQL

  5. Chỉ mục postgres `gin_trgm_ops` không được sử dụng