Python 如何在不断获取sqlite错误后使用sqlite添加第二个表
我正在尝试创建一个数据库来链接我正在制作的游戏,但我不断得到错误:sqlite3.OperationalError:near“/:syntax error。数据库可以很好地处理第一个表,但是当我添加第二个表时,它不会运行,并且会出现错误。有没有办法解决这个问题 以下是我创建数据库的方式:Python 如何在不断获取sqlite错误后使用sqlite添加第二个表,python,database,sqlite,Python,Database,Sqlite,我正在尝试创建一个数据库来链接我正在制作的游戏,但我不断得到错误:sqlite3.OperationalError:near“/:syntax error。数据库可以很好地处理第一个表,但是当我添加第二个表时,它不会运行,并且会出现错误。有没有办法解决这个问题 以下是我创建数据库的方式: class CreateDB: def __init__(self): self.conn = sqlite3.connect("TRON.db") self.c = s
class CreateDB:
def __init__(self):
self.conn = sqlite3.connect("TRON.db")
self.c = self.conn.cursor()
def createTables(self, Tables):
for tableName, field in Tables.items():
self.c.execute('CREATE TABLE IF NOT EXISTS ' + tableName + ' (' + field + ')')
self.conn.commit()
def main():
"""main function"""
db = CreateDB()
Tables = {"AccountDetails": '''PlayerID integer,
Username text,
Password text,
primary key (PlayerID)''',
"Player": '''PlayerID integer,
Username text,
TotalWins integer,
TotalLosess integer,
TotalGames integer,
TotalPoints integer,
Win/lose_Ratio real,
primary key (PlayerID)'''}
db.createTables(Tables)
main()
“赢/输比率”字段中的问题。由于它包含可以表示运算符的
/
,因此必须在字段名中引用它:
Tables = {"AccountDetails": '''PlayerID integer,
...
primary key (PlayerID)''',
"Player": '''PlayerID integer,
...
TotalPoints integer,
"Win/lose_Ratio" real,
primary key (PlayerID)'''}