0
所以我是XCode的新手,我想使用Sqlite3將數據存儲在數據庫中。我有一個班級用戶,我有這種方法。創建和打開數據庫xCode 4.5
-(void)createOrOpenDB
{
NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docPath = [path objectAtIndex:0];
dbPathString = [docPath stringByAppendingPathComponent:@"users.db"];
char *error;
NSFileManager *fileManager = [NSFileManager defaultManager];
if([fileManager fileExistsAtPath:dbPathString] == NO)
{
const char *dbPath = [dbPathString UTF8String];
if(sqlite3_open(dbPath, &userDB)==SQLITE_OK)
{
const char *sql_stmt = "CREATE TABLE IF NOT EXISTS USERS (ID INTEGER PRIMARY KEY AUTOINCREMENT, NAME TEXT, PASSWORD TEXT, CONFIRM TEXT, EMAIL TEXT)";
sqlite3_exec(userDB, sql_stmt, NULL, NULL, &error);
sqlite3_close(userDB);
}
}
}
但我還有另一個類,我想創建另一個表。但它不會工作,因爲這種方法說數據庫已經存在。
如何才能在另一個類中打開該數據庫以創建一個新表?
你有沒有想過使用CoreData?我使用過SQL數據庫,我可以說使用CoreData可以讓你的代碼更清潔,並且可以看到你的數據庫實體的可視化。繼承人一個很好的教程,如果您感興趣:http://www.raywenderlich.com/934/core-data-on-ios-5-tutorial-getting-started – RyanG
謝謝:)我會檢查這是否可以幫助我:) –
如果數據庫已經存在,什麼問題?簡單地使用它。您應該創建一個處理所有類的數據庫訪問的單個實例。 –