こんにちは、よろしくお願いいたします。
前提・実現したいこと
OracleDBから取得したレコードをMySQLにINSERTで挿入したい。
発生している問題・エラーメッセージ
OracleDBから取得したレコードを、MySQLの全く同じ構造のテーブルに挿入したいのですが、一部データに
?!"#$%&'()=~
という記号が含まれていて下記エラーが発生してしまいます。
ERROR 1064 (42000) at line 2: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '()=~','?!"#$%&'()=~','?!" '1000025677','','',''' at line 13
Oracleのq['']のように、囲うことでエスケープできるものなどがあればいいのですが。。。
方法があればご教授お願いいたします。
ちなみに、レコード文はプログラムで生成しています。
該当のソースコード
SQL
1INSERT INTO test VALUES ( 2'R1fDIRzzTDYY','"!#$%&'()"@test.com',null,'????齩????齭齰齵????','????齩????齭齰齵????','????齩????齭齰齵????????齩????齭齰齵????',null,null,null,null,null,null,null,null,null,null,null,TO_DATE('2017-03-22 11:10:10','YYYY/MM/DD HH24:MI:SS'),'R1fDIRzzTDYY',null,null,'01', 3}
試したこと
QUOTE()で囲った
補足情報(FW/ツールのバージョンなど)
・データに4文字バイトが含まれていますが気にしないでください。
・MySQLバージョン:5.7
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/03 02:37