0
I가 다음 sqlite3를 테이블 :선택 참조 열 항목 : 무시 WHERE 절
CREATE TABLE bilder (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL);
데이터 :
__id__
8
9
10
11
그리고
CREATE TABLE combos (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL);
데이터 :
__id__
1
2
3
4
01 23,516,
그리고
CREATE TABLE combo_bild (combo_id int not null references combos(id), bild_id int not null references bilder(id), display_nummer int, unique (combo_id, bild_id));
데이터 :
__combo_id__|__bild_id__|__display_nummer__
1 8 1
1 9 2
2 8 1
2 10 2
나는 다음과 같은 쿼리를 처리 할 때 :
가SELECT combo_id, bild_id FROM combo_bild WHERE combo_id > 1;
은 내가 (예상대로) 얻을 그러나
__combo_id__|__bild_id__|__display_nummer__
2 8 1
2 10 2
을 때 나는 우리이다. 전자 다음 쿼리 :
SELECT combo_id, bild_id FROM combo_bild WHERE bild_id > 9;
내가
__combo_id__|__bild_id__|__display_nummer__
1 8 1
1 9 2
2 8 1
2 10 2
가 왜 절은 무시됩니다 얻을? 그것을 봐 줘서 고마워, Dani
왜 bild_id 문자열의 항목입니다을? 나는 그들을 int로 선언했다 (create statement 참조). –
사실 : "$ check-> bindParam (': ID', $ id, SQLITE3_TEXT);" - 대신 SQLite3_INTEGER - 왜 ID가 int로 선언 되었기 때문에 DBMS가 불평하지 않습니까? 그리고 : tipp에 대해 많은 감사드립니다! –
"$ conn-> exec ('PRAGMA foreign_keys = ON;');"와 같은 것이 필요합니까? 내 입장을 제대로 확인 하시겠습니까? –