我正在尝试将Json对象放在sqlite数据库中
private voID addList(String info){ try { JsONObject reader=new JsONObject(info); String COMMAND = reader.getString("COMMAND"); String ParaMS = reader.getString("ParaMS"); int ID = vpictures.InsertList(COMMAND,info); } catch (Exception e){ if (DEBUG_FLAG)Log.d("Log1 ", "adding Exception :"+ e.getMessage()); } return;}
Json对象信息看起来像这样
{ "COMMAND":"ADD_NEW", "ParaMS":{ "deviceid":"1234", "custID":"41701", "description":"Ddd", "colTranType":"ABS", }}
这是我的小桌子
private static final String table_CREATE = "CREATE table " + table_name + " (ID INTEGER, deviceid TEXT, LTIME INTEGER, LATITUDE REAL,"+ "LONGITUDE REAL, THEPICTURE BLOB, SENT INTEGER, NOTES TEXT, COMMAND TEXT, ParaMS TEXT);";
我正在尝试插入COMMAND和ParaMS.
我的sqlite代码看起来像这样
public int InsertList(String COMMAND, String info){ try { JsONObject reader = new JsONObject(info); String param_str = reader.getString("info"); if (_Db == null) _Db = getWritableDatabase(); if (_LastID == -1) { Cursor c = _Db.query(table_name, new String[] {"max(ID)"}, null, null, null, null, COMMAND, param_str); if (c != null && c.movetoFirst()) { _LastID = c.getInt(0); c.close(); } else _LastID = 0; c.close(); } try { ContentValues cv = new ContentValues(); cv.put("ID",++_LastID); cv.put("COMMAND",String.valueOf(COMMAND)); cv.put("ParaMS",ParaMS); _Db.insert(table_name, "", cv); } catch (Exception e){ Log.d("Log2","Error:"+e.getMessage()); } } catch (JsONException e1) { Log.d("Log2","Error:"+e1.getMessage()); } return _LastID; }
基本上我从addList函数得到的异常
adding Exception : Exception invalID liMIT clauses
如何考虑将Json对象插入sqlite
解决方法:
这些是query()方法的参数:
Cursor c = _Db.query( table_name, // table new String[] {"max(ID)"}, // columns null, // selection null, // selectionArgs null, // groupBy null, // having COMMAND, // orderBy param_str); // limit
orderBy和limit参数没有意义.要在整个表中找到最大的ID,这些参数必须为null.
无论如何,有一个helper function使得从数据库中读取单个数字变得更容易,而不必使用游标进行处理:
long lastID = DatabaseUtils.longForquery(_Db, "SELECT max(ID) FROM "+table_name, null);
并且,如果您已将ID列声明为INTEGER PRIMARY KEY,则该列将自动递增,并且您不必手动设置.
总结以上是内存溢出为你收集整理的异常无效限制条款-Android全部内容,希望文章能够帮你解决异常无效限制条款-Android所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)