执行对数据库的查询操作,如果查询不成功,就跳出一个对话框,显示信息。
但执行应用以后,发现应用停止运行了,log如下
12-27 13:33:36.879: I/SqliteDatabaseCpp(1037): sqlite returned: error code = 1, msg = no such table: info, db=/data/data/com.example.v2/files/mydb.db3
12-27 13:33:36.929: D/AndroidRuntime(1037): Shutting down VM
12-27 13:33:36.929: W/dalvikvm(1037): threadid=1: thread exiting with uncaught exception (group=0x40a031f8)
12-27 13:33:36.949: E/AndroidRuntime(1037): FATAL EXCEPTION: main
12-27 13:33:36.949: E/AndroidRuntime(1037): java.lang.NullPointerException
=================================================
java代码如下:
 ArrayList<Map<String, Object> > listdate=null;
                ////////////第一次执行时,表未创建的情况,查询信息为空
                try
                {
                    listdate=dbtool.searchTable(timeString, dateString, placeString);
                    
                } catch (SQLiteException se)
                {
                   alertDialog.show();             
                }
=============================
searchTable代码如下
 public ArrayList<Map<String, Object>> searchTable(String time,String date,String place)
    {
        ArrayList<Map<String, Object>> list=null;
        Cursor cursor=null;
        String sql=null;
        sql="select * from info where 1=1";
        if(time!=null&&!"".equals(time))
            sql=sql+"and time="+time;
        if(date!=null&&!"".equals(date))
            sql=sql+"and date="+date;
        if(place!=null&&!"".equals(place))
            sql=sql+"and place="+place;
        cursor=db.rawQuery(sql, null);
        while(cursor.moveToNext())
        {
            Map<String, Object>  item=new HashMap<String, Object>();
            item.put("_id", cursor.getString(0));
            item.put("time",cursor.getString(1));
            item.put("date", cursor.getString(2));
            item.put("place", cursor.getString(3));
            item.put("event", cursor.getString(4));
            list.add(item);    
        }
        
        return list; 
    }
=================================
现在的问题是,我已经设置了如果查询不成功就执行catch内的语句,LOG显示没有这个表(因为我没创建),所以查询不成功。但为什么没有执行catch内的语句?????请大家帮帮忙