Python+MySQL.连接器Python:带有函数定义变量的select_statement



我昨天在python中开始了一个小项目,最终成功地制作了一个有效的数据库选择函数,但我想知道是否有人能告诉我我写它的方式是好的,还是最终会出现多个问题。

这个想法是制作一个函数,我可以调用它来请求/更新一个表,在那里我可以存储玩家的数据,我想通过Python、Pygame和MySQL创建一个小型在线游戏。连接器Python

因此,这是函数代码(我试图用我目前对Python的了解来保持它尽可能干净和直观,因为我本周刚刚把它拿回来,所以目前对它的了解有限。(

我不确定的部分是select_statement变量,我不确定我使用串联的方式是否可以,或者是否有一种简单有效的方式。

def db_select(selection, table):
    dbc = db_connect()
    if dbc:
        print("The SQL connection was successful.")
    else:
        print("The SQL connection could not be established.")
    cur = dbc.cursor()
    select_statement = "SELECT * FROM " + table + " WHERE id = %(id)s"
    cur.execute(select_statement, {'id': selection})
    print(cur.fetchone()[1])
    dbc.close()
    print("The SQL connection was closed successfully.")

Python的.format()语法仅适用于这类情况——处理动态值(例如将table插入字符串(包括SQL查询((。

query = "SELECT * FROM {} WHERE id = %(id)s".format(table)

它在我的日常使用中比以前的方法(如你的方法(更清洁、更可靠。

最新更新