Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apakah itu mungkin untuk melakukan salinan massal di mysql

Anda dapat menyisipkan beberapa baris menggunakan satu pernyataan SQL seperti:

INSERT INTO myTable (col1, col2, col3) VALUES ('myval1', 'myval2', 'myval3'), ('myotherval1', 'myotherval2', 'myotherval3'), ('anotherval1', 'anotherval2', 'anotherval3');

Pembaruan:

MarkR benar dalam komentarnya - jika Anda mengumpulkan data dari pengguna, atau mengumpulkan informasi, Anda dapat membuat kueri secara dinamis dengan sesuatu seperti:

StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("INSERT INTO myTable (col1, col2, col3) VALUES ");
for(int i=0;i<myDataCollection.Count;i++) {
  stringBuilder.Append("(" + myDataCollection[i].Col1 + ", " + myDataCollection[i].Col2 + ", " + myDataCollection[i].Col3 + ")");
  if (i<myDataCollection.Count-1) {
    stringBuilder.Append(", ");
  } else {
    stringBuilder.Append(";");
  }
}

string insertStatement = stringBuilder.ToString();

Dua poin penting yang perlu diperhatikan:

  1. Jika Anda menerima masukan dari pengguna, itu sangat penting untuk membersihkan semua input pengguna, jika tidak, pengguna jahat dapat memodifikasi/menghapus/menjatuhkan seluruh database Anda. Untuk info lebih lanjut, google "Injeksi SQL."
  2. Saya menggunakan kelas StringBuilder, daripada menggunakan string primitif dan hanya menambahkan (mis. string s ="Insert..."; s+="blah blah blah") karena StringBuilder lebih cepat dalam menambahkan, karena itu tidak diperlakukan sebagai array, dan karenanya tidak perlu mengubah ukurannya sendiri saat Anda menambahkannya.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Temukan string duplikat di database

  2. Bagaimana menghubungkan flutter ke database mysql localhost

  3. bagaimana cara mengaktifkan koneksi ulang otomatis database di PHP?

  4. Mengonversi MySQL ke Pembuat Kueri Doktrin. Masalah dengan JIKA dan CONCAT. Atau pendekatan lain untuk subkueri pada pilih

  5. Kesalahan replikasi MySQL 2003