2012-02-09 4 views
0

두 개의 테이블이있는 데이터베이스 sqlite를 만들었습니다.두 개의 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 

이제 단일보기에서 두 개의 uitableviews가 필요합니다. 또한 2 개의 uitextfield도 있습니다.

첫 번째로 나는 고객 이름이 필요합니다. uitextfield에 이름이 표시되어야하는 이름을 클릭하면 두 번째 uitable에서 첫 번째 테이블의 이름을 선택한 customerId 만 일치하는 값을 두 번째 테이블에 표시해야합니다.

예 : 첫 번째 표에서 "Paul Novak"을 선택한 다음 두 번째 표에서 "관리자"와 "점원"두 가지 값만 표시하면됩니다. 이는 우리가 선택한 주먹표 값과 일치하기 때문입니다.

-(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; 
} 
+0

일부 코드를 복사하면 코드 응답을 높일 수 있습니까 –

+0

질문 코드를 변경해보십시오 –

답변

0

내 제안은 개체 계층에서이를 처리 할 것이므로 매번 데이터베이스로 돌아갈 필요가 없습니다. 물론, 한 번에 얼마나 많은 데이터를로드 하느냐에 달려 있습니다.