2012-03-26 46 views
2

在我的数据库中,我有包含animalNumber(主键),名称,繁殖日期和图像字段的表AnimalDetails。我想将数据添加到此表中。 我已经为名称,品种n dateofbirth和uiimageview从imagepicker中选取图像创建了3个textfield,animalNumber是一个随机生成的数字。 现在我想将这些数据添加到我的表格中。如何从uitextfield插入值也是在sqlite中的图像?

请帮帮我!

+0

插入表名值(id,name);或插入到tablename(“id”,“name”)values(id,name); – vireshas 2012-03-26 06:51:43

+0

请注意,如果您不将数据库文件复制到文档目录,您将无法写入文件。由于MainBundle中的所有文件都是只读的。 – rckoenes 2012-03-26 07:15:46

+0

@rckoenes:现货!为了良好的观察+1 – 2012-03-26 07:25:25

回答

1

我希望你知道如何打开数据库。

一旦你打开你需要调用在哪里你在数据库中插入数据如下方法数据库:

- (BOOL) insertContactDetails 
{ 
    char *st, *errorMsg; 

    st = sqlite3_mprintf("INSERT INTO contactDetails (`Id`,`Name`) VALUES" 
         " (%d,'%s')",       
         [textId.text intValue],[txtName UTF8String]); 

    NSLog(@"QUERY: %@",[NSString stringWithUTF8String:st]); 
    int ret = sqlite3_exec(yourDB, st, NULL, NULL, &errorMsg); //yourDB is declared as "sqlite3 *yourDB;" 

    if (ret != SQLITE_OK) 
    { 
     sqlite3_free(errorMsg); 
     sqlite3_free(st); 
     return NO; 
    } 
    sqlite3_free(st); 
    return YES; 
} 

一旦你执行这个查询,你需要关闭数据库。

希望这可以帮助你。

1

如果你直接使用iOS上的SQLite的,我会用FMDB:https://github.com/ccgus/fmdb

然后使用正确的语法INSERT要插入到contactDetails表使用executeUpdate:executeUpdateWithFormat: