2017-03-06 2 views
0

UbuntuでWeb2pyとsqlite Dbで作業しています。 Iweb2py、ユーザ入力ポスト項目などの「Hello Worldの」などのsqliteのDBには、次のとおりです。コントローラーのデフォルト次のようにアイテムがThisDbに掲載されて を:Sqlite DBのインデックスエラーを解決する方法

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の' 次のように: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() 

私のDB構成はこれです:

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

row[0]は、最初の列の値です。
row[1]は、2番目の列の値です。

明らかに、以前のデータベースに複数の列がありました。

関連する問題