提供了正确的SQLNinthoite绑定数

2024-05-29 11:02:49 发布

您现在位置:Python中文网/ 问答频道 /正文

从我读到的内容来看,这是一个常见的错误—我正在将一个制表符分隔的文本文件读入sqlite数据库,虽然有15列,但在某些行中没有数据。例如,以下是我正在阅读的文本文件:

http://www.vta.org/schedules/tdl/SC_902NO_WK.tdl

我只是在看真实的时代。问题是,举例来说,并不是每一列都有时间,这就是为什么我

sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses >15, and there are 8 supplied.

如何处理文本文件中的空值?在

这是我的密码

import sqlite3 as lite
import sys
import csv
con = lite.connect('vta.db')

with con:

cur = con.cursor()
cur.execute('DROP TABLE IF EXISTS NB_902_Wkdy')
cur.execute("""CREATE TABLE NB_902_Wkdy ( Train_Num INT primary key, Winchester TEXT,            Bascom TEXT, Fruitdale TEXT, Diridon TEXT, 

会议文本、圣塔克拉文本、公民中心文本、地铁文本、塔斯曼文本、Old_Ironsides文本、公平橡树文本、洛克希德文本、惠斯曼文本、山景文本““”)

^{pr2}$

Tags: text文本importexecutetableliteconsqlite3
1条回答
网友
1楼 · 发布于 2024-05-29 11:02:49

您还没有指定“处理”的含义,但是假设您想在缺少的字段中插入NULL值,您只需将它们附加到t中,直到有足够的值:

for t in creader:
    while len(t) < 15:
        t += (None,)
    cur.execute(..., t)

相关问题 更多 >

    热门问题