###実現したいこと
Windowsバッチ内でMySQLを用いた以下処理を実行したいです。
※区切り文字としてのカンマと、それ以外のカンマを区別して取り込む処理
この処理自体が誤っていれば、そちらにもご指摘いただきたいです。。
LOAD DATA LOCAL INFILE "読み込みファイル名をパスで指定" INTO TABLE tableA FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n' IGNORE 1 LINES;
###試したこと
この処理を別ファイルではなく、バッチファイル内に直接書きたく、現在は以下のように書きました。
※別ファイルにすると変数に設定したパス名やテーブル名(例:%TABLE%)等を使用できない(と思われる)ため
MYSQL -u%USER% -p%PASS% -e "LOAD DATA LOCAL INFILE '%table_path:\=\\%'INTO TABLE %TABLE% FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n' IGNORE 1 LINES; SHOW WARNINGS;" %DATABASENAME%
ただ、これだと、どこからどこがシングルクオーテーションの、どこからどこがダブルクォーテーションの範囲内かを
認識できないようで、これ以降の処理が全て文字列扱いになっている状態です。
どこをどう修正すれば良いか、ご教授いただきたいです。
質問内容に不明点がございましたら、
お手数をおかけしますが、ご指摘ください。
何卒宜しくお願い致します。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/09/06 02:30 編集
2016/09/06 06:45
退会済みユーザー
2016/09/06 09:45