首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从sqlite检索数据: NullPointerException

从sqlite检索数据: NullPointerException
EN

Stack Overflow用户
提问于 2013-01-25 03:53:08
回答 2查看 121关注 0票数 0

我想从数据库中检索数据并将其显示在日志中,下面是我的代码:

代码语言:javascript
复制
 String dd = "1/23/2013";

  String sp = "Sky Storm";

 Log.d("Checking",db.getMeterNUmber2(dd,sp).toString());

getMeterNUmber2在DBAdapter中,而我要查找的数据在数据库中,所以我只想检索它。

我的数据库适配器:

代码语言:javascript
复制
public ArrayList<String> getMeterNUmber2(String date , String Vname) throws SQLException {    

    String[] whereArgs = new String[]{date,Vname}; 

    Cursor mcursor = db.rawQuery("SELECT MeterNumber FROM " + SCAN_TABLE + " WHERE  Date = ? AND VendorName = ? ",whereArgs);

    ArrayList<String> results = new ArrayList<String>();
    while (mcursor.moveToNext()) {
        results.add(mcursor.getString(0));
    }

    return results;

}

我在logcat中遇到错误:

代码语言:javascript
复制
01-24 19:57:13.590: E/AndroidRuntime(11662): FATAL EXCEPTION: main
01-24 19:57:13.590: E/AndroidRuntime(11662): java.lang.NullPointerException
01-24 19:57:13.590: E/AndroidRuntime(11662):    at scann.barcode.scan.DBAdapter.getMeterNUmber2(DBAdapter.java:303)
01-24 19:57:13.590: E/AndroidRuntime(11662):    at scann.barcode.scan.Result$1.onClick(Result.java:104)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-25 04:39:24

我和你有同样的问题,当我看着你的原木猫

代码语言:javascript
复制
 java.lang.NullPointerException ,

它返回空值,所以这意味着它不会读入你的数据库,

请检查您是否已打开数据库,例如:db.open() and close

票数 2
EN

Stack Overflow用户

发布于 2013-01-25 04:17:46

我认为你不能仅仅登录从getMeterNUmber2返回的logcat ArrayList<String>,因为它是一个列表。您需要首先从那里检索单个字符串值:Best way to convert an ArrayList to a string

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14509572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档