如何将'插入postgresql?

How to insert ' into postgresql?

我使用 pythonpsycopg2 来更新数据库。

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

使用Psycopg's parameter passing functionality:

cur.execute ("""
    UPDATE scholars 
    SET name = %s 
    WHERE id = %s and name is null
    """,
    (author, scholar_id)
)

Triple quotes make it clearer