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

Menggunakan penggantian dengan kueri Sequelize mentah:menghindari tanda kutip tunggal?

Jika Anda yakin bahwa datasetName tidak akan pernah mengandung kemungkinan injeksi SQL, Anda dapat langsung memasukkan nama tabel ke dalam kueri, seperti:

sequelize
   .query("LOAD DATA LOCAL INFILE :file
           INTO TABLE dataset_" + datasetName + "
           FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n';",
          null,
          {raw:true}, {file: datasetPath})

Komentar yang diposting oleh mwarren tidak benar-benar berfungsi dalam kasus ini - Sequelize melihat bahwa itu adalah string yang dimasukkan, dan karenanya lolos.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pemetaan JPA:QuerySyntaxException:foobar tidak dipetakan...

  2. Apa perbedaan antara Oracle dan Mysql ketika menafsirkan Buat Database?

  3. Kesalahan sintaks SQL LIMIT

  4. Hitung catatan yang dimulai dengan huruf tertentu

  5. Pilih nilai baris dinamis sebagai nama kolom, dalam urutan tertentu