私は数ヶ月しかプログラミングしていないので、これが明らかであれば私を許してください。SQLiteがフォームエントリを列名として使用しようとしているのはなぜですか?
私はwtformsで構築されたローカルWebサイトを持っている問題があります。フォームデータを取り出して既存のローカルデータベースに追加するような単純な作業をしようとしています。
フォームをテストするとエラーが発生します。 sqliteが列名としてform.field.data entry
を使用しようとしているようです。誰かがこれを修正する方法を教えてくださいできますか? コードは次のとおりです。私は取得しています
if request.method == 'POST' and form.validate():
name = form.Name.data
street = form.StreetAddress.data
city = form.City.data
zipcode = str(form.Zip.data)
bedroom = str(form.Bedroom.data)
bathroom = str(form.Bathroom.data)
sqFt = str(form.SqFt.data)
price = str(form.Price.data)
typeID = str(form.TypeID.data)
imageLink = str(form.ImageLink.data)
command = """INSERT INTO Rentals(ID,Name,StreetAddress,City,Zip,Bedroom,Bathroom,SqFt,PriceMonth,TypeID,ImageLink)
VALUES({e},{f},{g},{h},'{i}','{j}','{k}','{l}','{m}','{n}',{u})
""".format(e=rental_id, f=name, g=street,h=city, i=zipcode, j=bedroom, k=bathroom, l=sqFt, m=price, n=typeID,u=imageLink)
cursor.execute(command)
conn.commit()
エラーは次のとおりです。
cursor.execute(command)
sqlite3.OperationalError: no such column: x
127.0.0.1 - - [05/May/2017 08:28:52] "POST /rental_create HTTP/1.1" 500 -
x
は、私は、フォームをテストするために入力したものです。
これは私の最初のプロジェクトの1つです。私はこれまで多くの楽しみを持っていました。助けていただければ幸いです。ありがとう。
引用符で囲まれた値 - (i、j、k、l、m、n)は引用符で囲まれていますが、他のもの(e、f、g、h、u)はありません。おそらく、データベースは引用符で囲まれていない 'x'を見て、それが列名であると仮定していますか? –