SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

Simulasikan ORDER BY di SQLite UPDATE untuk menangani batasan keunikan

Anda benar bahwa masalah muncul karena SQLite memeriksa batasan setelah setiap pembaruan baris dan bukan di akhir pernyataan atau akhir transaksi.

Saya melihat solusi untuk masalah ini (dari SQLite tidak mengimplementasikan UPDATE benar). Dengan asumsi bahwa priority kolom tidak memiliki nilai negatif, kita dapat menggunakannya (nilai negatif) sebagai sementara untuk menghindari UNIQUE kesalahan kendala:

UPDATE table1 SET priority = - (priority + 1) WHERE priority > 1 ;

UPDATE table1 SET priority = - priority WHERE priority < 0 ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengaitkan tabel menggunakan database Room di Android Studio

  2. Gabung Kiri SQLite

  3. Keluarkan Hasil Kueri SQLite sebagai Pernyataan INSERT

  4. Bagaimana Group_Concat() Bekerja di SQLite

  5. Mengambil data dari sql databse di flutter datewise?