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

Sisipan Massal Oracle Menggunakan Pengembang SQL

SQL*Loader adalah cara favorit saya untuk memuat volume data besar ke dalam Oracle. Gunakan opsi penyisipan jalur langsung untuk kecepatan maksimal tetapi pahami dampak dari beban jalur langsung (misalnya, semua data dimasukkan melewati tanda air tinggi, yang baik-baik saja jika Anda memotong tabel Anda). Bahkan memiliki toleransi untuk baris yang buruk, jadi jika data Anda memiliki "beberapa" kesalahan, itu masih bisa berfungsi.

SQL*Loader dapat menangguhkan indeks dan membangun semuanya di akhir, yang membuat penyisipan massal menjadi sangat cepat.

Contoh panggilan SQL*Loader:

$SQLDIR/sqlldr /@MyDatabase direct=false silent=feedback \
    control=mydata.ctl log=/apps/logs/mydata.log bad=/apps/logs/mydata.bad \
    rows=200000

Dan mydata.ctl akan terlihat seperti ini:

LOAD DATA
INFILE '/apps/load_files/mytable.dat'
INTO TABLE my_schema.my_able
FIELDS TERMINATED BY "|"
 (ORDER_ID,
  ORDER_DATE,
  PART_NUMBER,
  QUANTITY)

Atau... jika Anda hanya menyalin seluruh konten dari satu tabel ke tabel lain, di seluruh database, Anda dapat melakukan ini jika DBA Anda menyiapkan DBlink (proses 30 detik), dengan asumsi DB Anda diatur dengan ruang redo untuk selesaikan ini.

truncate table my_schema.my_table;

insert into my_schema.my_table
select * from [email protected]_remote_db;

Penggunaan /* +append */ petunjuk masih dapat menggunakan penyisipan jalur langsung.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle dbms_job.submit:Mencampur Sinkron dan Asinkron

  2. Bagaimana saya bisa MEMILIH baris pertama dengan MAX (nilai Kolom)?

  3. Enkripsi Oracle Advanced Security dengan konfigurasi Spring JDBC xml

  4. mengembalikan hasil dari fungsi

  5. Kesalahan ORA-00942 dihasilkan saat membuat tampilan