我在我的應用程序中使用了sqlite數據庫。我想將這個數據庫與我的mysql服務器同步。但我認爲用我的應用程序中的新數據庫替換退出的數據庫很容易。因此,它也將解決數據導入導出問題。但我不知道如何從我的網址下載.sqlite文件並將其添加到我的應用程序包中。我們如何從url下載sqlite數據庫並將其作爲sqlite數據庫添加到我們的應用程序中?
以簡單的方式。我想在運行時在Xcode資源文件夾中添加文件。我不知道該怎麼做。 如果有人有想法,請幫助我。
在此先感謝。
我在我的應用程序中使用了sqlite數據庫。我想將這個數據庫與我的mysql服務器同步。但我認爲用我的應用程序中的新數據庫替換退出的數據庫很容易。因此,它也將解決數據導入導出問題。但我不知道如何從我的網址下載.sqlite文件並將其添加到我的應用程序包中。我們如何從url下載sqlite數據庫並將其作爲sqlite數據庫添加到我們的應用程序中?
以簡單的方式。我想在運行時在Xcode資源文件夾中添加文件。我不知道該怎麼做。 如果有人有想法,請幫助我。
在此先感謝。
嘗試下面的代碼:
NSData *dbFile = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://www.someurl.com/DatabaseName.sqlite"]];
NSString *resourceDocPath = [[NSString alloc] initWithString:[[[[NSBundle mainBundle] resourcePath] stringByDeletingLastPathComponent] stringByAppendingPathComponent:@"Documents"]];
NSString *filePath = [resourceDocPath stringByAppendingPathComponent:@"Database.sqlite"];
[dbFile writeToFile:filePath atomically:YES];
現在你可以使用這個數據庫文件。
要下載的數據庫添加到您的應用程序SQLite數據庫試試下面的代碼
NSString *dbfilepath = [FileUtils documentsDirectoryPathForResource:[NSString stringWithFormat:@"%@.db", @"downloadedDatabase"]];
NSData *dbData = [NSData dataWithContentsOfFile:dbfilepath];
NSString *filePath = [[FileUtils documentsDirectoryPath] stringByAppendingPathComponent:@"Database.sqlite"];
[dbData writeToFile:filePath atomically:YES];
現在您的應用程序的數據庫已經準備好與進口的記錄。
爲什麼要下載.sqlite文件?你不會查詢MySQL服務器,然後創建本地模式並填充表? – trojanfoe 2012-03-12 09:34:51
@trojanfoe:謝謝,我不知道該怎麼做。請提供一些更多的指導方針,以便從MYSQL服務器更新我的本地iPhone sqlite數據庫。 – Nit 2012-03-12 12:51:28