2016-10-13 6 views
0

私はpythonパッケージpsycopg2を使用してデータベースを更新します。'をpostgresqlに挿入するには?

cur.execute("UPDATE scholars SET name='{}' WHERE id={} and name is null".format(author, scholar_id)) 

psycopg2.ProgrammingError: syntax error at or near "Neill" LINE 1: UPDATE scholars SET name='O'Neill, Kevin' WHERE id=12403 and...

データは次のようになります。O'Neill, Kevin

+2

SQLの危険性がなくても、SQLクエリに引数を渡す方法をお読みください注射による攻撃: http://initd.org/psycopg/docs/usage.html#query-parameters –

+1

プレースホルダにスワップしてみてください。 'cur.execute(" UPDATE scholars SET name =%s WHERE id =%sと名前はnullです "、(author、scholar_id))'。ボーナス、あなたはSQLインジェクションにあまり晒されていません。 – roganjosh

答えて

関連する問題