繁体   English   中英

在Python中使用SQLite3

[英]Using SQLite3 in Python

我正在尝试在python的Sqlite数据库表中存储一些已解析的提要内容值,但是遇到错误。有人可以帮我解决这个问题。事实上,问这个问题太琐碎了!我是新手!。

from sqlite3 import *
import feedparser

data = feedparser.parse("some url")

conn = connect('location.db')
curs = conn.cursor()

curs.execute('''create table location_tr
  (id integer primary key, title text ,
        updated text)''')


for i in range(len(data['entries'])):
    curs.execute("insert into location_tr values\
            (NULL, data.entries[i].title,data.feed.updated)")
conn.commit()
curs.execute("select * from location_tr")
for row in curs:
    print row

错误是:

Traceback (most recent call last):
  File "F:\JavaWorkspace\Test\src\sqlite_example.py", line 16, in <module>
    (NULL, data.entries[i].title,data.feed.updated)")
sqlite3.OperationalError: near "[i]": syntax error

尝试

curs.execute("insert into location_tr values\
        (NULL, '%s', '%s')" % (data.entries[i].title, data.feed.updated))

错误应该是这一行

  curs.execute("insert into location_tr values\
            (NULL, data.entries[i].title,data.feed.updated)")

data.entries[i].title来自Python。 因此,如果将其用双引号引起来,它将成为文字字符串,而不是值。 应该是这样的:

  curs.execute("insert into location_tr values (NULL," + data.entries[i].title +","+data.feed.updated+")")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM