Kasus penggunaan khusus ini dipilih dalam "Memahami Autocommit":
Kontrol penuh atas perilaku "komit otomatis" tersedia menggunakan
Connection.execution_options()
generatif metode yang disediakan diConnection
,Engine
,Executable
, menggunakan tanda "komit otomatis" yang akan mengaktifkan atau menonaktifkan komit otomatis untuk cakupan yang dipilih. Misalnya, sebuahtext()
konstruksi yang mewakili prosedur tersimpan yang komit mungkin menggunakannya sehingga pernyataan SELECT akan mengeluarkan KOMIT:engine.execute(text("SELECT my_mutating_procedure()").execution_options(autocommit=True))
Cara SQLAlchemy autocommit mendeteksi operasi perubahan data adalah dengan mencocokkan pernyataan dengan pola, mencari hal-hal seperti UPDATE, DELETE, dan sejenisnya. Tidak mungkin untuk mendeteksi jika fungsi/prosedur yang disimpan melakukan mutasi, dan kontrol eksplisit atas autocommit disediakan.
Urutan bertambah bahkan pada kegagalan karena nextval()
dan setval()
panggilan tidak pernah dibatalkan.