为iphone sqlite db收集数据的最佳方法是什么?

时间:2010-08-29 05:20:14

标签: php iphone mysql sqlite

我想用数据预先填充的sqlite db构建一个iphone应用程序。但是如何在开始时填充数据会成为一个小问题。

我的合作伙伴和我可能都需要访问数据库并编辑数据。

我想构建一个用于编辑数据的Web界面,但我的主机服务只为我提供PHP + MYSQL解决方案,那么如果我把数据放在MYSQL中,如何将它全部提取到sqlite db中?

对我的问题有什么好的建议吗?是否有任何sqlite db远程编辑解决方案,我们可以在最后下载sqllite数据库吗?

3 个答案:

答案 0 :(得分:1)

我得到了搜索的解决方案,我完成了它 这是一个保存sqlite数据字符串的代码保存到应用程序文档目录中的txt文件

-(IBAction)creatTxt{
appDelegate = (evernoteAppDelegate *)[[UIApplication sharedApplication] delegate];
NSString *str;

for (int i=0; i<[appDelegate.noteArray count]; i++) {

    nottxtobj = [appDelegate.noteArray objectAtIndex:i];
    str=[NSString stringWithFormat:@"Title=%@\nDiscription=%@",nottxtobj.noteTitle,nottxtobj.noteDisc];
    NSLog(@"data=%@",str);


    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docDir = [paths objectAtIndex:0];

    NSString *filename = [docDir stringByAppendingPathComponent:[NSString stringWithFormat:@" %d.txt",nottxtobj.noteID]];
    NSError *error = NULL;
    BOOL written = [str writeToFile:filename atomically:YES encoding:NSUTF8StringEncoding error:&error];
    if (!written)
        NSLog(@"write failed, error=%@", error);
    }



}

我希望这段代码对你有用 谢谢

答案 1 :(得分:0)

我不知道SQLite数据库的并发编辑,但你有一个选择是在MySQL中创建数据库,然后将其导出为sql文件,然后在对内容满意时将其导入SQLite。

但是有一个明显的问题,两个数据库的语法略有不同。只要您没有使用MySQL的高级功能,您使用类似命令行工具mysqldump或PHPMyAdmin中的导出功能从MySQL导出的大部分SQL都可以在SQLite中使用。

您需要删除MySQL for MySQL插入的其他数据。幸运的是,人们之前想要这样做,quick google search带来了许多有希望的结果。

SQLite网站也有一些选项:http://www.sqlite.org/cvstrac/wiki?p=ConverterTools

你必须购买一些软件的链接,但有一个免费的shell脚本大约有一半,看起来可能有用。

答案 2 :(得分:0)

免费且简单的解决方案: 打开Goog​​le电子表格,同时处理它们,每当您需要将结果输入核心数据DB时,只需将其保存为.txt或.csv并导入数据库。
Firefox的插件,您可能会发现最后一部分有用:SQLite Manager 祝你好运。