SQL无法找到对应的表名:ndroid.database.sqlite.SQLiteException: no such table: dcdy (code 1): , while compilin

错误!
SQL无法找到对应的表名:ndroid.database.sqlite.SQLiteException: no such table: dcdy (code 1): , while compilin_第1张图片
调用查询代码代码

    public SeleteSpinner() {
        db = DApplication.getApp().getDB().getInstance();
    }

    public int jzlx(String builderType) {
        // 建筑类型 1.砖混2.钢混3.砖木4.其他
        Cursor c = db.rawQuery("select * from jzlx where name=?",
                new String[] { builderType });
        if (c.moveToFirst())
            return c.getInt(c.getColumnIndex("type"));
        else
            return 0;

    }

这里吧DataBaseHelper作为全局app的唯一对象,实例唯一
但是跑起来就是找不到表名,我还以为我字段有写错了,可是字段写错了,不是找不到表,表都写错了,还玩个毛,呵呵,
发现问题:
db = DApplication.getApp().getDB().getWritableDatabase();
这一句话也能够获取一个db对象,但是这不是我要的这个,那么来看db类了

public class DataBaseHelper extends SQLiteOpenHelper {
    private static String sqliteimg = FileHelper.baidupsurl() + File.separator;
    private static File land_info = null;
    private static String sqlName = "";
    private static SQLiteDatabase sql;
    private SQLiteDatabase db;

    private static final int version = 1; // 数据库版本

    public SQLiteDatabase getInstance() {
        if (sql == null)
            sql = SQLiteDatabase.openOrCreateDatabase(land_info, null);
        return sql;
    }

    public DataBaseHelper(Context context) {
        super(context, "xx", null, version);
        land_info = new File(sqliteimg + "equity.db");// 创建文件
        if (!land_info.exists()) {
            try {
                land_info.createNewFile();
            } catch (IOException e) {
            }
        }
        this.db = getInstance();
        this.getWritableDatabase();
        this.getReadableDatabase();

    }
    }

我是通过指定文件路径去使用db对象的,不是在app的文件夹下创建的,
So问题就在这了,所以在代码中去创建了实例唯一的db对象以免和app自带的db对象搞混,因为两个对应的表示不一样的,看到了吗??
app对应的是名字为“xx”的表
而项目需要的是“equity”这张表,
好了到这里理解了两个对象的区别就好了,一般小型项目是不需要这样做的
这个项目需要导出数据库那么久能写写在app的文件夹下面了!!!

你可能感兴趣的:(SQL无法找到对应的表名:ndroid.database.sqlite.SQLiteException: no such table: dcdy (code 1): , while compilin)