PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

ActiveRecord::StatementInvalid:PG InFailedSqlTransaction

Tidak ada jawaban lain yang memperbaiki akar penyebab dari masalah ini.

Masalahnya adalah ketika Postgres memunculkan pengecualian, itu meracuni transaksi di masa mendatang pada koneksi yang sama.

Cara mengatasinya adalah mengembalikan transaksi yang melanggar:

begin
  ActiveRecord...do something...
rescue Exception => e
  puts "SQL error in #{ __method__ }"
  ActiveRecord::Base.connection.execute 'ROLLBACK'

  raise e
end

Lihat referensi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Temukan nama host dan port menggunakan perintah PSQL

  2. Alat GUI untuk PostgreSQL

  3. Ekspor data tabel Postgresql menggunakan pgAdmin

  4. Hubungan tidak ada

  5. apa cara yang baik untuk pecahan horizontal di postgresql