2016-08-03 2 views
-2

Привет, друзья. Я хочу получить все записи в sqlite и хочу напечатать их в Log.can, кто-нибудь скажет мне, как это сделать в android.below - это мой код.i не хочу отобразите эти записи в списке массивов или текстовом режиме, просто хотите напечатать его в Logcat.i, не знаю, что такое роль getWritableDatabase и getredableDatabase.plz, дайте некоторые сведения об этом. Я новичок в android.thanks в расширенном.Как получить все вставленные записи в SQLite

public class DataBase { 
    private static final int DATABASE_VERSION = 1; 
    private static final String DATABASE_NAME = "health"; 
    private static final String TABLE_NAME = "Device_Data"; 

    private static final String KEY_ID = "id"; 
    private static final String KEY_Site_Id = "siteId"; 
    private static final String KEY_Patient_Id = "patientId"; 
    private static final String KEY_ReadingType = "readingType"; 
    private static final String KEY_DeviceMACId = "deviceMACId"; 
    private static final String KEY_DeviceData = "deviceData "; 
    private static final String KEY_DeviceType = "deviceType"; 

    private final Context context; 

    private DataBaseHelper dbHelper; 
    public SQLiteDatabase db; 
    // private static final String TAG = "DataBase"; 

    static final String DATABASE_CREATE = "create table " + "TABLE_NAME" + "(" 
      + KEY_ID + " INTEGER PRIMARY KEY ," + KEY_Site_Id + " TEXT ," 
      + KEY_Patient_Id + " TEXT ," + KEY_ReadingType + " TEXT ," 
      + KEY_DeviceMACId + " TEXT ," + KEY_DeviceData + " TEXT ," 
      + KEY_DeviceType + " TEXT ,")"; 

    public DataBase(Context _context) { 
     context = _context; 
     dbHelper = new DataBaseHelper(context, DATABASE_NAME, null, 
       DATABASE_VERSION); 
    } 

    public void onCreate(SQLiteDatabase db) { 
     db.execSQL(DATABASE_CREATE); 
    } 

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
     db.execSQL("DROP TABLE IF EXISTS " + "Device_Data"); 
     onCreate(db); 
    } 

    void addJson(JSONObject json) throws JSONException { 
     SQLiteDatabase db = dbHelper.getWritableDatabase(); 
     db.getVersion(); 
     System.out.println("Database Version : " + db.getVersion()); 
     ContentValues values = new ContentValues(); 
     try { 
      values.put(KEY_Site_Id, json.getString("siteId")); 

      values.put(KEY_Patient_Id, json.getString("patientId")); 
      System.out.println("KEY_PATIENT_ID : " 
        + json.getString("patientId")); 

      values.put(KEY_DeviceMACId, json.getString("deviceMACId")); 
      System.out.println("KEY_DeviceMACId : " 
        + json.getString("deviceMACId")); 

      values.put(KEY_ReadingType, json.getString("readingType")); 
      System.out.println("KEY_ReadingType : " 
        + json.getString("readingType")); 

      values.put(KEY_DeviceData, json.getString("deviceData")); 
      System.out.println("KEY_DeviceData : " 
        + json.getString("deviceData")); 

      values.put(KEY_DeviceType, json.getString("deviceType")); 
      System.out.println("KEY_DeviceType : " 
        + json.getString("deviceType")); 


     } catch (JSONException e) { 
      // TODO Auto-generated catch block 
      System.out.println("JsonException........"); 
      e.printStackTrace(); 
     } 

     long res = db.insert("Device_Data", null, values); 
     System.out.println("Response Result : " + res); 

     db.close(); 
    } 

    public DataBase open() throws SQLException { 
     db = dbHelper.getWritableDatabase(); 
     return this; 
    } 

    public SQLiteDatabase getDatabaseInstance() { 
     return db; 
    }        
+0

посмотреть link.http: //www.tutorialspoint.com/android/android_sqlite_database.htm –

+0

Возможный дубликат [Ho w для извлечения данных из базы данных sqlite в android и отображения ее в TextView] (http://stackoverflow.com/questions/12298835/how-to-retrieve-data-from-sqlite-database-in-android-and-display- it-in-textview) –

ответ

1

Вы можете получить все данные из базы данных ..

// Getting All Contacts 
public List<ReportTable> getAllReportDetail() { 
    List<ReportTable> reportList = new ArrayList<ReportTable>(); 

    String selectQuery = "SELECT * FROM " + yourTABLE_Name; 

    SQLiteDatabase db = this.getWritableDatabase(); 
    Cursor cursor = db.rawQuery(selectQuery, null); 

    if (cursor.moveToFirst()) { 
     do { 


      ReportTable reportTable = new ReportTable(); 
      reportTable.set_ReportID(Integer.parseInt(cursor.getString(0))); 
      reportTable.set_ReportPaymentMode(cursor.getString(1)); 
      reportTable.set_ReportRechargeMobileNo(cursor.getString(2)); 


      // Adding contact to list 
      reportList.add(reportTable); 
     } while (cursor.moveToNext()); 
    } 

    // return contact list 
    return reportList; 
} 

Надеется, что это поможет вам.

0

Вы называете getWritableDatabase, чтобы убедиться, что ваш DB может читать, писать, обновление ... бла-бла ..

И помните, каждый раз, когда вы делаете операцию (обновление, удаление, вставка):

First: open 
..do something..... 
Finally: Close. 

Вы можете получить все записи в таблице, делая что-то вроде этого:

public ArrayList<HealthData> getAllData() { 
     ArrayList<HealthData> res = new ArrayList<HealthData>(); 

     Cursor cursor = database.query(TABLE_NAME, allNoteColumn, null, null, null, null, null); 
     for(cursor.moveToLast(); !cursor.isBeforeFirst(); cursor.moveToPrevious()) { 


      HealthData data = cursorToData(cursor); 
      res.add(data); 
     } 
     cursor.close(); 
     return res; 
    } 


    private HealthData cursorToData(Cursor cursor) { 
     HealthData data = new HealthData(
       cursor.getString(0), 
       cursor.getString(1), 
       cursor.getString(2), 
       cursor.getString(3)); 
      // depending on how many column in your table, above is 4 column. 
     return data; 
    } 
+0

Просто любопытно. Любая причина, по которой ваш курсор идет назад? –

+0

Я создаю метод cursorToData, чтобы сделать его многоразовым в другом случае. – alway5dotcom

+0

Это не имеет значения, не так ли? Этот метод рассматривает только одну строку. Я имел в виду цикл for. –

Смежные вопросы