pythonを通してSQLiteデータベースを開き、テーブルのビューのビューにアクセスしようとしました。残念ながらエラーメッセージが表示されます。以下のPythonコードは、問題を示していますTestView2を作成しようとした後Python sqlite3はテーブルのビューの表示を行うことができません
import sqlite3
conn = sqlite3.connect("test.db")
mydb = conn.cursor()
mydb.execute("CREATE TABLE TestTbl (MRTarget_id int, Fullmodel text)")
mydb.execute("CREATE TABLE TestTbl2 (Other_id int, Othermodel text)")
mydb.execute("CREATE VIEW TestView AS SELECT m.ROWID, m.MRTarget_id, m.Fullmodel, t.Othermodel FROM TestTbl m, TestTbl2 t")
mydb.execute("CREATE VIEW TestView2 AS SELECT m.Fullmodel, m.Othermodel FROM TestView m")
mydb.close()
Pythonはエラー「m.Fullmodel:いいえ、そのような列sqlite3.OperationalError」を出してくれる。ただし、Sqlite3プロンプトから、上記のSQL文は問題なく実行できます。私のデータベースにはテーブルのビューのビューが含まれているので、これらのプログラムにPythonでアクセスすることはまったく不可能ではないかと思います。
あなたはPython 2.6を使用していますか? –
また、この問題を再現することができません、上記のコードは私のために正常に動作します。 –
Win32で[MSC v.1500 32ビット(Intel)] Python 2.6.6(r266:84297、Aug 24 2010、18:46:32)を再現しました。同じプラットフォーム上でPython 2.7.1でOK。 –