Database 在SQLite中创建函数时光标处出现操作错误
我正在尝试将数据插入我的SQLite数据库,在为DB创建函数时出现错误之前,一切正常。它在光标处发送操作错误 我找不到解决问题的办法 我正在使用的代码:Database 在SQLite中创建函数时光标处出现操作错误,database,python-3.x,sqlite,Database,Python 3.x,Sqlite,我正在尝试将数据插入我的SQLite数据库,在为DB创建函数时出现错误之前,一切正常。它在光标处发送操作错误 我找不到解决问题的办法 我正在使用的代码: import sqlite3 from sqlite3 import * SQL_CREATE_STATEMENT = '''CREATE TABLE password (id integer PRIMARY KEY NOT NULL,username text, password text, source text
import sqlite3
from sqlite3 import *
SQL_CREATE_STATEMENT = '''CREATE TABLE password
(id integer PRIMARY KEY NOT NULL,username text, password text, source text)'''
SQL_INSERT_STATEMENT = '''INSERT INTO password (username, password, source)VALUES({},{},{});'''
DATABASE_PATH = 'home/taha/lessons/projects/passStorage/passDB.db'
DATA = dict()
def create_connection(db_file):
try:
conn = sqlite3.connect(db_file)
return conn
except Error as e:
return e
def create_table(connection, sql_commands):
c = connection.cursor()
c.execute(sql_commands)
print('done')
def get_input():
USERNAME = input('username: ')
PASSWORD = input('password: ')
SOURCE = input('source: ')
return USERNAME,PASSWORD,SOURCE
def insert_date(connection, data):
c = connection.cursor()
c.execute(SQL_INSERT_STATEMENT.format(data.values))
def main():
conn = create_connection(DATABASE_PATH)
create_table(conn, SQL_CREATE_STATEMENT)
user_info = get_input()
DATA['username'], DATA['password'], DATA['SOURCE'] = user_info
insert_date(conn, DATA)
if __name__ == '__main__':
main()
我希望没有错误,但它会发送以下信息:
c = connection.cursor()
AttributeError: 'OperationalError' object has no attribute 'cursor'
但我认为应该是这样
DATABASE_PATH = '/home/taha/lessons/projects/passStorage/passDB.db'
create\u connection
函数返回连接或异常。您从不检查返回值。
DATABASE_PATH = 'home/taha/lessons/projects/passStorage/passDB.db'
DATABASE_PATH = '/home/taha/lessons/projects/passStorage/passDB.db'