比较两个sqlite表

时间:2012-02-09 05:31:07

标签: iphone objective-c sqlite uitableview

我创建了一个带有两个表的数据库sqlite。

1.Customers

CustomerId Name
---------- -----------
1 Paul Novak
2 Terry Neils
3 Jack Fonda
4 Tom Willis

2. Reservation

Id CustomerId designation
-- ---------- ----------
1 1 manager
2 2 engineer
3 2 software
4 1 clerk
5 3 director

现在我在singleview上需要两个uitableviews。还有两个uitextfields。

在第一个不合格的我需要客户名称。当我点击任何名称应该在uitextfield中显示的名称时,在第二个名称中,我们在第一个表中选择了名称的customerId匹配的值必须显示在第二个表中。

例如:在第一个表格中,如果我选择“Paul Novak”,那么在第二个表格中我只需要显示两个值“manager”和“clerk”,因为这与我们选择的第一个表值相匹配。 / p>

-(Question1*)readData1{
    sqlite3_stmt *statement1;
    int rowid1;
    rowid1=[self getRowId1];

    //.......................................TableName................................................. 
    tempQuery=[@"select * from iapp_question where case_id=" stringByAppendingString:[NSString stringWithFormat:@"%d",rowid1]];
    //}
    ///........................................................................................ 

    const char *query2=[tempQuery UTF8String];
    if (sqlite3_prepare_v2(database,query2,-1,&statement1,NULL)==SQLITE_OK) {
        vt=[[[Question1 alloc]init]autorelease];
        while (sqlite3_step(statement1)==SQLITE_ROW) {
            vt.question=[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement1,2)];
        }
    }
    return vt;
}

1 个答案:

答案 0 :(得分:0)

我的建议是在对象层处理这个,你不需要每次都返回数据库。当然,它还取决于您想要一次加载多少数据。