【问题标题】:Python & PostgreSQL: Function to insert variable arg into table?Python和PostgreSQL:将变量arg插入表的函数?
【发布时间】:2016-01-09 23:39:26
【问题描述】:

我正在尝试执行如下代码来注册具有给定名称的玩家,但我无法让参数name 做任何事情......我认为%s 是插入字符串的变量一个数据库,但它似乎不起作用。

import psycopg2

def registerPlayer(name):
    """Registers new player."""
    db = psycopg2.connect("dbname=tournament")
    c = db.cursor()
    c.execute("insert into Players values (%s);")
    db.commit()
    db.close()

registerPlayer("Butter")

当我运行它时,我收到错误消息:

ProgrammingError: syntax error at or near "%"    
LINE 1: insert into Players values (%s);

【问题讨论】:

    标签: python sql database postgresql psycopg2


    【解决方案1】:

    您实际上并没有将参数传递给 execute 方法。

    c.execute("insert into Players values (%s);", (name,))
    

    【讨论】:

    • 我知道我遗漏了一些明显的东西。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    • 2017-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-24
    相关资源
    最近更新 更多