Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 在SQLite中创建函数时光标处出现操作错误_Database_Python 3.x_Sqlite - Fatal编程技术网

Database 在SQLite中创建函数时光标处出现操作错误

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

我正在尝试将数据插入我的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)'''
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'