2017-05-28 42 views
0

我有一个应用程序从sqlite数据库获取所有数据并将其转换为JSON,但我想知道如果我只想获取特定数据列?从SQLite数据库检索特定的列

这是我使用从SQLite的DATABSE得到的所有数据,并将其转换成JSON代码:

Cursor data = db.getCartItems(); 
     orderNameArray = new JSONArray(); 
     data.moveToFirst(); 
     while(data.isAfterLast() == false) 
     { 
      int totalColumn = data.getColumnCount(); 
      orderNameObject = new JSONObject(); 
      for (int i = 0; i < totalColumn; i++) 
      { 
       try { 
        orderNameObject.put(data.getColumnName(i), data.getString(i)); 
       } catch (JSONException e) { 
        e.printStackTrace(); 
       } 
      } 
      orderNameArray.put(orderNameObject); 
      data.moveToNext(); 
     } 
     data.close(); 

预先感谢所有的见解或提前帮助! :d

+1

显示你的db.getCartItems()你可以在你想要的特定列的查询中进行更改 https://www.tutorialspoint.com/sqlite/sqlite_select_query.htm – Pavan

+0

哦,是啊哈哈。我是一个白痴,我可以创建另一个函数来获得我需要的特定值。谢谢你,先生!您应得到Upvote :) –

+1

如果您不想编写自定义SELECT语句,还可以使用带有“continue”的if语句跳过您选择的列。 – Thracian

回答

1

如果你想只获取选择表的字段,然后使用以下查询:

SELECT Coulmn1, Coulmn2, Coulmn3 FROM TABLENAME; 

或u想所有数据

SELECT * FROM TABLENAME; 

更多信息https://www.tutorialspoint.com/sqlite/sqlite_select_query.htm

+0

感谢您的帮助先生,我的问题是如此简单。我只是过分复杂哈哈。 –

+0

欢迎,它有时会发生:) – Pavan