sqlite3.OperationalError:无法识别的令牌:

时间:2020-01-21 18:32:34

标签: python sqlite bots sqlite3-ruby

您好,我是sqlite世界的新手,这是我的问题。尝试修复Twitter机器人时发生错误。这是要修改的代码和错误。告诉我您是否需要完整的代码或其他信息

def CreateTables(user):
   connexion = sqlite3.connect('data.db')
   c = connexion.cursor()
   c.execute('''CREATE TABLE IF NOT EXISTS {tab}
   (id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, compte text, date DATE);'''.format(tab=user.screen_name))
   c.close()
   connexion.commit()
Traceback (most recent call last):
  File "C:\Users\User\Documents\Terminale\Python\Twitter bot\BotTwitter-master\main.py", line 53, in <module>
    GestionFollow.CreateTables(user)
  File "C:\Users\User\Documents\Terminale\Python\Twitter bot\BotTwitter-master\GestionFollow.py", line 12, in CreateTables
    (id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, compte text, date DATE);'''.format(tab=user.screen_name))
sqlite3.OperationalError: unrecognized token: "361Yra"

1 个答案:

答案 0 :(得分:0)

您正在尝试创建一个以数字361Yra开头的名称的表,这是不允许的。
您可以做的是将名称括在方括号中:[361Yra]
尽管我不是Python专家,但是请使用以下代码:

.format(tab="[" + user.screen_name + "]")