0

次のテーブルを含む SQLite データベースがあります。

  • プレーヤー
  • カード
  • チーム
  • プレイヤーカード

CardDataComposed は、次の SELECT で作成された VIEW です。

SELECT Player.PlayerID, Player.PlayerFirstName, Player.PlayerLastName, Card.CardID, Team.TeamID, Team.TeamName

FROM Player, Card, PlayerCard, Team 
WHERE Player.PlayerID=PlayerCard.PlayerID
AND Card.CardID=PlayerCard.CardID 
AND Team.TeamID=PlayerCard.TeamID;

sqlite3 コマンド ライン ツールを使用すると、SELECT * FROM CardDataComposedすべてのレコードが返されます。ただし、FMDB で同じクエリを使用すると、次のようになります。

NSString *dbQuery = @"SELECT * FROM CardDataComposed";
[self.database executeQuery:dbQuery];

レコードを返しません。FMDBがレコードを適切に取得できるように、クエリを(誤って)どのようにまとめているかに関係していると思います。このビューからレコードを選択するようにクエリを修正するにはどうすればよいですか? FMDB からビューをクエリできますか? 前もって感謝します!

4

1 に答える 1

0

データベースに加えた変更を確認するには、シミュレーターの Documents ディレクトリの内容を削除する必要がありました。上記のクエリは期待どおりに機能します。

于 2013-08-09T19:04:08.413 に答える