Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Masalah kunci asing dengan banyak db dalam satu transaksi

Nah, Ids kolom tidak berarti "kunci", dan mereka akan membuat Anda tersandung di semua tempat. Mereka seharusnya tidak berarti, pengidentifikasi fisik, dan Anda telah melampirkan makna padanya. Saat Anda meminta Ids yang sama ada di database lain.

Apakah pelanggaran FK sudah diselesaikan? Kemungkinan besar Anda memiliki Ids yang sama sekali berbeda untuk baris DB1, di DB2; dan tentunya Ids induk yang berbeda .

Anda harus secara konsisten tidak tentukan Ids nilai, dan biarkan server mengisinya, atau selalu tentukan Ids nilai, di kedua database.

Masalah kedua adalah Anda tidak berpikir secara transaksional. Transaksi multi-db tidak ada masalah sama sekali. Jadi lupakan Ids kolom, apa isinya, dan menggunakan kunci nyata untuk tabel, di kedua Dbs. ids akan berbeda, tetapi siapa yang peduli (itu berarti melepaskan kebutuhan untuk melampirkan makna pada pengidentifikasi yang tidak berarti).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengeksekusi teks sql yang diteruskan sebagai parameter sp?

  2. .NET API untuk Pialang Layanan SQL Server

  3. Menyiapkan dan Mengonfigurasi Replikasi SQL Server

  4. Kueri di mana dua kolom berada dalam hasil kueri bersarang

  5. Perbaiki Msg 512 "Subquery mengembalikan lebih dari 1 nilai" di SQL Server