2010-11-16 5 views
1

J'utilise la base de données Sqlite dans mon application iphone.Sqlite Prepare Failed: No such table <table_name>

Ici, dans mon application i d'abord utilisé un chemin absolu comme @ "/ Users/macos/Documents/appdatabase.sql

Maintenant ici je veux exécuter l'application sur l'appareil. Il faut le chemin relatif.

ce qui doit être fait pour obtenir cette voie pour la base de données

ici, je reçois cette erreur lorsque je tente de courir avec le chemin absolu sur le dispositif

Sqlite Préparer Échec:. Aucune telle table

J'ai vérifié que cette table existe déjà dans ma base de données.

Que dois-je faire pour obtenir le chemin relatif de la base de données?

S'il vous plaît aidez et suggérez.

Merci

Répondre

0

Vous pouvez obtenir le chemin de la base de données en utilisant ce -

NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDir = [documentPaths objectAtIndex:0]; 
    NSString *databasePath = [documentsDir stringByAppendingPathComponent:@"mydb.sqlite"]; 

supprimer également votre application de simulateur ou appareil et exécuter/installer à nouveau.

+0

Vous devrez appeler '[databasePath stringByExpandingTildeInPath]' avant de l'utiliser – slf