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

SQL Server:Apakah mungkin untuk memasukkan ke dalam dua tabel secara bersamaan?

Dalam satu pernyataan :Tidak.

Dalam satu transaksi :Ya

BEGIN TRANSACTION
   DECLARE @DataID int;
   INSERT INTO DataTable (Column1 ...) VALUES (....);
   SELECT @DataID = scope_identity();
   INSERT INTO LinkTable VALUES (@ObjectID, @DataID);
COMMIT

Berita baiknya adalah kode di atas juga dijamin atomik , dan dapat dikirim ke server dari aplikasi klien dengan satu string sql dalam satu panggilan fungsi seolah-olah itu adalah satu pernyataan. Anda juga bisa menerapkan pemicu ke satu tabel untuk mendapatkan efek dari satu sisipan. Namun, pada akhirnya masih dua pernyataan dan Anda mungkin tidak ingin menjalankan pemicu untuk setiap masukkan.



  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 file .sql menggunakan powershell?

  2. Buat UDF Terikat Skema di SQL Server

  3. Ganti spasi duplikat dengan satu spasi di T-SQL

  4. Bagaimana Anda membuat cadangan dan memulihkan database sebagai salinan di server yang sama?

  5. Fungsi SQL Server ROUND():Untuk Apa dan Mengapa Anda Harus Peduli?