2016-12-06 20 views
0

私はPythonを使用してMySQLデータベースを処理しています。データベースの既存のフィールドに新しい行を追加したい。Pythonを使用してMySQLデータベースの既存のフィールドに新しい行を追加します。

cmd = 'UPDATE table SET field= CONCAT(field,'\r\nThis is new line')' 

このコマンドには、PythonまたはMySQLのバックラッシュと引用符でいくつかのエラーがあります。 私には何か提案がありますか?どうもありがとう!

答えて

1

文字列エスケープは、Python内でSQL文字列をインライン展開するときに少し混乱することがあります。しかし、Pythonは完全な引用符と同様に宣言する文字列のための単一の目盛りの両方をサポートしているので、あなたが外側の引用符を使用して経由でSQL文を正しくエスケープすることができます。

cmd = "UPDATE table SET field= CONCAT(field,'\r\nThis is new line')" 
1

triple quoteを試してみてください。

パンダから始まっ
cmd = """UPDATE table SET field= CONCAT(field,'\r\nThis is new line')""" 
0

0.14では、接続オブジェクトではなく、sqlalchemyエンジンを直接提供する必要があります。

from sqlalchemy import create_engine 
engine = create_engine("mysql+mysqldb://<user>:<password>@<host>[: 
<port>]/<dbname>") 
combined.to_sql("cps_raw.cps_basic_tabulation", engine, if_exists='append') 
関連する問題