如何在python程序中执行2个sql查询,这将访问sqlite数据库。 在这里,我只能执行第一个查询而不能执行第二个查询。?
import sqlite3
conn=sqlite3.connect("suman1.db")
cursor=conn.cursor()
cursor
cursor.execute("select Album.AlbumId,Album.Title,Track.Name,Track.GenreId,Track.UnitPrice from Album inner join Track on Album.AlbumId=Track.AlbumId")
cursor.execute("select Track.TrackId,Album.Title,Track.Name,Track.Unitprice,Track.Bytes from Album inner join Track on Album.AlbumId=Track.AlbumId where UnitPrice=1.99 and Title like '%Season 4%'and GenreId like '%21%'")
for row in cursor.fetchall():
print row
conn.commit()
conn.close()
答案 0 :(得分:0)
两个查询都已执行。
问题是您从未阅读过第一个查询的结果。 (执行另一个查询会重置光标。)
您必须在执行下一个查询之前阅读结果:
cursor.execute("select ...")
for row in cursor:
print row
cursor.execute("select ...")
for row in cursor:
print row
或使用两个游标。