def staff_database(db_name,table_name,sql_1,admin):
with sqlite3.connect('BehaviourManagement.db') as db:#connects this funtion to the database file
cursor = db.cursor()#used to naviage around the database
cursor.execute("select name from sqlite_master where name=?",(table_name,))#checks database for this table
result = cursor.fetchall()#gets the results
if len(result) != 1:#runs if statement if table present in the database
cursor.execute(sql_1)#runs the sql statement
db.commit()#ensures changes made to the database are saved
cursor.execute(insert_to_login ,admin)
db.commit()
sql_1 = """CREATE TABLE Login(
ID INTEGER PRIMARY KEY autoincrement,
username text,
password text,
);"""
我正在尝试运行此代码,但是我收到以下错误...
Traceback (most recent call last):
File "M:\computer science a2\comp 3\login.py", line 151, in <module>
staff_database(db_name, table_name,sql_1,admin)#runs the function
File "M:\computer science a2\comp 3\login.py", line 62, in staff_database
cursor.execute(sql_1)#runs the sql statement
sqlite3.OperationalError: near ")": syntax error
如果有人可以提供帮助我会很感激。
答案 0 :(得分:3)
修复sql_1
:
sql_1 = """CREATE TABLE Login(
ID INTEGER PRIMARY KEY autoincrement,
username text,
password text
);"""
在,
后删除password text
。
答案 1 :(得分:1)
删除“密码文本”之后的最后一个“,”。逗号表示正在跟随另一个字段。