2
"SELECT * FROM locations
JOIN section_has_location ON locations.location_id = section_has_location.location_id
WHERE section_has_location.chapter_id =2
AND section_has_location.section_id=2"
に私はエラーを取得する:SQLiteエラーの原因: 'エラー#3132:データ型が一致しません。'アドビのAIR
SQLError: 'Error #3132: Data type mismatch.', details:'could not convert text value to numeric value.', operation:'execute', detailID:'2300'
これらはテーブルです:
CREATE TABLE locations (
location_id INTEGER,
name TEXT,
mask_id TEXT,
x REAL,
y REAL,
content TEXT,
image_url TEXT,
type TEXT
);
CREATE TABLE section_has_location (
chapter_id INTEGER,
section_id INTEGER,
location_id INTEGER
);
エラーを起こさないようにと、私は、クエリを修正するにはどうすればよいですか?
更新:すべてのデータをエクスポートし、新しいクリーンなデータベースにインポートしました。これはそのエラーを解決したようです。
ありがとう、これは本当に変です。 DBを見ると、列の型は間違いなく正しいです。申し訳ありませんが、私はこれをAdobe AIRで使用していることを言い忘れていましたが、それは私が考えたいと思うような違いはありません。 – davivid
@davividこれを見てください:http://opensourcehacker.com/2008/03/14/a-short-story-about-why-to-rtfm/あなたは同じ状況になるかもしれない –
AIRはそのようにそれに影響するべきではありません:Sその本当に奇妙です。おそらく、これをストアドプロシージャに変換してみて、クエリ文字列を使用するのではなく呼び出してください。 – Purplegoldfish