一只钢镚 2020-03-30 17:32 采纳率: 0%
浏览 1543

为什么我的sqlite数据库查询不到东西啊

        db.execSQL("create table if not exists courses (acceptanceDate varchar(20),professional varchar(20),classs varchar(20),course varcharr(20))");
              db.execSQL("insert into courses values(2015,'软件工程','一班','高等数学')");

建表和插入语句如上,查询的时候发现只有

Cursor cursor = db.rawQuery("select classs from courses where acceptanceDate="+AcceptanceDate+"",null);

这样才能成功,就是只有where查询条件是数字的时候才能查到东西(AcceptanceDate是我定义的一个变量,取到的值是2015),如果查询

Cursor cursor = db.rawQuery("select classs from courses where professional="+Professional+"",null);

就会报错
E/SQLiteLog: (1) no such column: 软件工程

关键是我用

Cursor cursor = db.rawQuery("select professional from courses where acceptanceDate="+AcceptanceDate+"",null);

也能查询到软件工程这个数据,有没有大佬知道这是哪有问题啊....

  • 写回答

3条回答 默认 最新

  • stone_you 2020-03-31 15:16
    关注

    加上单引号试一下

    Cursor cursor = db.rawQuery("select classs from courses where professional='"+Professional+"'",null);
    
    评论

报告相同问题?