Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Oracle menghapus data dari tabel SQL Server jarak jauh

Saya pikir pertanyaan yang lebih baik adalah:Apa cara terbaik untuk memindahkan data dari SQL Server ke Oracle yang menghapus dari MSSS setiap baris yang berhasil dikirim?

Anda melakukan ini dalam satu lingkaran untuk memastikan bahwa ketika Anda menambahkan satu, Anda menghapus dari yang lain.

Jika beberapa hal acak yang tidak diketahui terjadi kesalahan pada sisipan, Anda akan menghindari menghapus catatan sumber.

Itu intinya, kan?

Ada banyak cara yang lebih baik untuk menangani pergerakan data semacam ini daripada melakukan setelah setiap loop transaksi terdistribusi menyisipkan/menghapus.

Pertama, komit di tengah lingkaran itu buruk. Di Oracle, ini adalah cara yang baik untuk menyebabkan sesi lain mendapatkan kesalahan ORA-01555. Jadi saya akan menghindari itu jika memungkinkan.

Kedua, Anda harus benar-benar tahu apa kemungkinan penyebab kesalahan yang wajar pada penyisipan. Anda melanggar panjang kolom, FK, Inggris... ada daftar terbatas tentang apa yang bisa rusak saat dimasukkan. Jeda buruk berbulu besar seperti Tidak dapat memperluas tablespace HARUS menyebabkan sistem terhenti. Tidak perlu menjebak untuk itu. Tetapi masalah aplikasi seperti yang saya sebutkan mudah untuk dikelola.

Jika saya menulis ini, saya akan menyisipkan semua baris secara massal menggunakan LOG Oracle KESALAHAN untuk menghindari ROLLBACK penuh ketika hanya satu/beberapa baris yang gagal.

Sekarang Anda memiliki tabel yang berisi setiap baris gagal dan alasannya gagal. Sekarang Anda dapat di sisi SQL Server, hapus semua baris BUKAN DALAM daftar ID yang gagal.

Anda telah mencapai hal yang sama tetapi dengan operasi berbasis Set alih-alih SLOW-BY-SLOW, ooops, maksud saya baris demi baris.




  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 mendapatkan baris terakhir dari tabel Oracle

  2. Perbarui hitungan hari sebelumnya menggunakan fungsi LAG di ORACLE

  3. Tambahkan Indikator Ordinal ke Tanggal di Oracle

  4. Kueri di Excel tanpa judul - Oracle

  5. Rekursi Pada Query Database untuk mendapatkan hasil hierarkis menggunakan Hibernate - Java