【问题标题】:Can't create an SQL Table in Python using input as name无法使用输入作为名称在 Python 中创建 SQL 表
【发布时间】:2016-08-26 12:13:59
【问题描述】:

我的 python 代码有点问题。我想从用户那里获取输入,并在此基础上创建一个具有该名称的 SQL 表。我在 table_name 变量中输入并希望这样做:

sql = "CREATE TABLE %s" % table_name
cur.execute(sql)

假设我使用输入“books”运行它。我收到此错误:

FUNCTIONNAME 中的文件“XXX”第 55 行
cur.execute(sql)
sqlite3.OperationalError:靠近“书籍”:语法错误

关于什么是错的任何想法?我google了一下,上面的代码应该没问题,但不是……

【问题讨论】:

    标签: python sql sqlite


    【解决方案1】:

    这很可能是因为您没有传递表定义(列名及其类型、大小)。我从发布的代码中看到的是你只传递了表名,所以你的查询变成了下面的,这是完全错误的

    CREATE TABLE books
    

    【讨论】:

    • 好吧,你是对的。我想使它没有任何列(故意),但没有意识到这是必要的。谢谢你的帮助。
    猜你喜欢
    • 2020-07-23
    • 2012-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    相关资源
    最近更新 更多