ノードで mysql-libmysqlclient を使用して LOAD DATA LOCAL INFILE を使用する必要があります。ただし、エラーが発生します
[エラー: クエリ エラー #1148: 使用されたコマンドは、この MySQL バージョンでは許可されていません]
これは、sequel pro から同じコマンドを実行しても発生しないため、問題は mysql-libmysqlclient によって使用される接続にある可能性が最も高いです。
これを修正するために mysql-libmysqlclient に送信するパラメータを知っている人はいますか?
接続の初期化:
secrets = stuff
mysql_db = mysql.createConnectionQueuedSync()
mysql_db.initSync()
mysql_db.realConnectSync secrets.host, secrets.user, secrets.password, secrets.database
mysql_db.connectError
module.exports = exports = mysql_db
送信クエリ:
mysql_db = require('./config/mysql_db')
sql_insert_into = "LOAD DATA local INFILE 'file_to_send.txt'
into table #{table.name}
FIELDS TERMINATED BY ';'
LINES TERMINATED by '\\n'
"
mysql_db.query sql_insert_into, (err, answer)->
console.log "sent " + sql_insert_into
私が得るエラー:
[Error: Query error #1148: The used command is not allowed with this MySQL version]
マイナーな注意: 私はコーヒー スクリプトでプログラムしますが、これは何も変更しないはずです