2014-08-05 3 views
0

테이블의 일부 데이터를 복사하여 다른 테이블에 삽입하려고합니다. 그러나 ArrayList에 데이터를 입력했지만 주어진 것만 복사하고 모든 데이터를 복사하지는 않습니다. 내가 뭘 놓치고 있니? 이 당신의 코드를 교체Android SQLite 테이블에서 다른 테이블로 값 복사

private void Tras() { 
String numero_ricevuto = (i.getStringExtra("numero")); 
SQLiteDatabase db = mHelper.getWritableDatabase(); 
final ArrayList<Dettaglio_i> dettaglii = new ArrayList<Dettaglio_i>(); 
String sql = "SELECT data, unita_di_misura FROM prev WHERE numero = '"+numero_ricevuto+"'"; 
Cursor c = db.rawQuery(sql, null); 
while (c.moveToNext()){ 
      Dettaglio_i e = new Dettaglio_i(); 
      e.data_ = c.getString(0);    
      e.unita_di_misura = c.getString(1); 
      dettaglii.add(e);  
     } 
c.close(); 
ContentValues cv = new ContentValues(); 
Dettaglio_i e = new Dettaglio_i(); 
cv.put(VerTable.SI_NO, "0"); 
cv.put(VerTable .DATA, e.data_); 
cv.put(VerTable .U_M, e.unita_di_misura); 
boolean inserite = false; 
      if (!inserite){ 
       long result = db.insert(VerTable .TABLE_NAME, null, cv); 

       if (result > 0){ 
        inserite = true; 
       } 
      } 

      if (inserite){ 


      } 
      db.close(); 

} 
+0

은 "주어진"을 의미 정확히 무슨 말을합니까? –

답변

0

시도 :

private void Tras() { 
    String numero_ricevuto = (i.getStringExtra("numero")); 
    SQLiteDatabase db = mHelper.getWritableDatabase(); 

    String insert = String.format("INSERT INTO %s (%s, %s, %s) ", 
      VerTable.TABLE_NAME, VerTable.SI_NO, VerTable.DATA, VerTable .U_M); 

    String select = "SELECT '0', data, unita_di_misura FROM prev WHERE " + 
      "numero='"+numero_ricevuto+"'"; 

    db.rawQuery(insert+select, null); 

    db.close(); 
} 
관련 문제