2016-10-22 32 views
0

我嘗試使用遊標從兩個表中檢索數據,但我只從一個表中獲取數據。 請幫忙。「如何使用android studio中的遊標從多個表中檢索數據」

這裏是完整的代碼。

//創建表

的//表T24

db.execSQL("CREATE TABLE IF NOT EXISTS T24 (ID NUMBER PRIMARY KEY,STARTING VARCHAR,DESTINATION VARCHAR" + 
         ",PLACES VARCHAR,PLACESFARE NUMBER(9,3),HOTELS VARCHAR,HOTELSFARE NUMBER(9,3),TRANSPORT VARCHAR," + 
         "TRANSPORTFARE VARCHAR,DAYS INTEGER,TOTALFARE NUMBER(9,3))"); 

//表P21

db.execSQL("CREATE TABLE IF NOT EXISTS P21"+"(NAME VARCHAR PRIMARY KEY,NO NUMBER," + 
        "ADDRESS VARCHAR,DAYS NUMBER,DATE NUMBER,MONTH NUMBER)"); 

//檢索來自數據庫的數據。

db = openOrCreateDatabase("tour", Context.MODE_PRIVATE, null); 
     String query1 = "select *from T24 where " + 
       "STARTING='" + s3 + "' and DESTINATION='" + s4 + "'"; 
     Cursor c = db.rawQuery(query1, null); 
     if (c.moveToFirst() == true) { 
      t1 = c.getString(3); 
      t2 = c.getString(4); 
      t3 = c.getString(5); 
      t4 = c.getString(6); 
      t5 = c.getString(7); 
      t6 = c.getString(8); 
      t7 = c.getString(9); 
      t8 = c.getString(10); 
     } 
     c.close(); 
     db.close(); 
     ptv.setText(t1); 
     pf.setText(t2); 
     hotels.setText(t3); 
     hf.setText(t4); 
     td.setText(t5); 
     tf.setText(t6); 
     fare.setText(t8); 
     try { 
      db2 = openOrCreateDatabase("tour", Context.MODE_PRIVATE, null); 
      String query2 = "select *from P21 where" + 
        "NAME='" + e1 + "'"; 
      Cursor c1 = db2.rawQuery(query2, null); 
      if (c1.moveToFirst() == true) { 
       t9 = c1.getString(0); 
       t10 = c1.getString(1); 
       t11 = Integer.parseInt(c1.getString(3)); 
       t12 = Integer.parseInt(c1.getString(4)); 
       t13 = Integer.parseInt(c1.getString(5)); 
      } 
      c1.close(); 
      db2.close(); 
      Toast.makeText(getApplicationContext(), "done3", Toast.LENGTH_LONG).show(); 
      name.setText(t9); 
      no.setText(t10); 
      sdate1.setText(t12); 
      sdate2.setText(t13); 

我能夠從表格「T24」中檢索日期,但無法從表格「P21」檢索數據。

請幫忙。

+0

使用連接的查詢檢索多個表中的數據嘗試http://androidopentutorials.com/android-sqlite-join-multiple-tables-example/ – YLS

回答

0

我想你左邊的空間「其中」在P21的sqlite的一句後:

String query2 = "select *from P21 where" + 
       "NAME='" + e1 + "'"; 

你需要這樣寫:

String query2 = "select * from P21 where " + 
       "NAME='" + e1 + "'"; 
+0

是的!,它的工作...謝謝 – Alekhya

+0

Alekhya,你能選擇我的答案是正確的。因爲我需要名譽:) – Beks

相關問題