我已經將數據庫包含在我的項目中,而且我之前也使用過fmdb。我想從我的舊項目複製我的代碼,但它仍然表示,「沒有這樣的表」沒有這樣的表問題
這裏是控制檯日誌:
DB Error: 1 "no such table: ANIMALS"
DB Query: SELECT * FROM ANIMALS WHERE Name = 'koyun'
DB Path: (null)
這裏是我的代碼:
NSString *path = [[NSBundle mainBundle] pathForResource:@"HayvanlarM" ofType:@"sqlite"];
FMDatabase *database = [FMDatabase databaseWithPath:path];
[database setLogsErrors:TRUE];
[database open];
NSString *anQuery = [[NSString alloc]initWithFormat:@"SELECT * FROM ANIMALS WHERE Name = '%@' ",[[bBackG objectAtIndex:0]stringByDeletingPathExtension]];
FMResultSet *results = [database executeQuery:anQuery];
while([results next]) {
NSString *animalName = [results stringForColumn:@"TR"];
//gjText.text = animalName;
NSLog(@"animalName: %@",animalName);
}
[database close];
database = nil;
我試圖通過Firefox的SQLite管理器創建我的分貝,我試圖利塔,但都給了我同樣的錯誤(no such table)
任何人都可以告訴我什麼是我的代碼中的問題?我嘗試了所有關於這樣的問題的解決方案,但迄今爲止他們都沒有和我一起工作。
你能否證實返回的路徑是否有效?沒有找到數據庫時SQLite的默認行爲是創建一個新的空行爲,因爲它是空的,它不會找到您要查找的表。 – borrrden 2012-03-25 10:56:14
當我在Xcode中包含數據庫時,我並未選擇將其添加到目標,在我選擇將其添加到應用目標後,它開始從數據庫讀取 謝謝:) – mortgy 2012-03-25 12:48:10