sql >> データベース >  >> RDS >> Mysql

生のSequelizeクエリで置換を使用する:一重引用符を避けますか?

    確かにdatasetName SQLインジェクションの可能性が含まれることはありません。次のように、テーブル名をクエリに直接挿入できます。

    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})
    

    この場合、mwarrenによって投稿されたコメントは実際には機能しません。Sequelizeは、文字列が挿入されていることを確認しているため、エスケープします。



    1. RailsスコープはISNOTNULLであり、空/空白ではありませんか?

    2. MySQLで動的ピボットテーブルを作成する方法

    3. カーソル内の動的テーブル名

    4. 2つの行間の時間差を計算する