我正在尝试编写一个 python 脚本,该脚本将加载我使用 SQL 在 pyhton 中创建的表,并使用来自文本文件的数据自动填充它们。我被困在基本编码上。我确实有一个大致的想法,但是当我尝试运行这种方法时出现错误。我创建了 2 个表。我已阅读文件。该文件是一个逗号分隔的文本文件,没有标题。
文件的前 3 行如下所示。
+ ---- + ----- + -------------------- + -------- + - + --- + ----- +
| John | Smith | 111 N. Wabash Avenue | plumber | 5 | 1.0 | 200 |
| John | Smith | 111 N. Wabash Avenue | bouncer | 5 | 1.0 | 200 |
| Jane | Doe | 243 S. Wabash Avenue | waitress | 1 | 5.0 | 10000 |
+ ---- + ----- + -------------------- + -------- + - + --- + ----- +
import sqlite3
conn= sqlite3.connect('csc455.db')
c = conn.cursor()
#Reading the data file
fd = open ('C:/Users/nasia/Documents/data_hw2.txt','r')
data = fd.readlines()
#Creating Tables
>>> L = """create table L
... (first text, last text, address text, job text, LNum integer,
... constraint L_pk
... primary key(first, last, address, job),
... constraint L_fk
... foreign key (LNum) references LN(LNum)
... );"""
>>> c.execute(L)
LN = """create table LN
... (
... LNum integer, Interest float, Amount, Integer,
... constraint LN_pk
... primary key (LNum)
... );"""
c.execute(LN)
#Inserting into database
for elt in data:
... currentRow = elt.split(", ")[:-1]
... insert = """(insert into LN values (%s, %s, %s);, %(currentRow[4], currentRow[5], currentRow[6]))"""
... c.execute(insert)
这里有一些语法错误。代码停止工作。我无法弄清楚我做错了什么。错误是 Traceback (last last call last): File "", line 4, in OperationalError: near "(": syntax error
我不知道我在做什么错