在Ubuntu中使用Web2py和sqlite Db。 Iweb2py,用户输入将项目发布到sqlite DB,例如“Hello World”,如下所示: 在控制器默认情况下,项目将发布到ThisDb中,如下所示:
consult = db.consult(id) or redirect(URL('index'))
form1 = [consult.body]
form5 = form1#.split()
name3 = ' '.join(form5)
conn = sqlite3.connect("ThisDb.db")
c = conn.cursor()
conn.execute("INSERT INTO INPUT (NAME) VALUES (?);", (name3,))
conn.commit()
另一个代码选择或应该读取ThisDb中的项目,在本例中为“Hello World”,如下所示:
location = ""
conn = sqlite3.connect("ThisDb.db")
c = conn.cursor()
c.execute('select * from input')
c.execute("select MAX(rowid) from [input];")
for rowid in c:break
for elem in rowid:
m = elem
c.execute("SELECT * FROM input WHERE rowid = ?", (m,))
for row in c:break
location = row[1]
name = location.lower().split()
我的数据库配置表'input'应该从中读取Hello World':
CREATE TABLE `INPUT` (
`NAME` TEXT
);
此代码以前在使用windows7和10进行编码时工作得很好,但我遇到了Ubuntu 16.04这个问题。我一直收到这个错误:
File "applications/britamintell/modules/xxxxxx/define/yyyy0.py", line 20, in xxxdefinition
location = row[1]
IndexError: tuple index out of range
答案 0 :(得分:0)
row[0]
是第一列中的值
row[1]
是第二列中的值。
显然,您以前的数据库有多个列。