0

我在 Android 上,这个问题是关于 Sqlite 的:

我有一个表 ( USERLOGIN),其中包含用户的凭据(用户名和密码)。我有另一个表 ( $USER$_PROJS),其中包含特定用户的项目信息。用户可以在那里创建和添加项目。

[$USER$将是一个来自表中列的username变量USERLOGIN。所以它基本上是一个动态表创建。]

这两个表都在同一个数据库 USER.db 中。我只有一个LoginDatabseAdapter班级和DatabseHelper班级同时管理这两个班级。

现在最初当用户登录时,数据库运行正常。但是,当用户尝试创建/添加项目时,在用户配置文件中,它不会将值插入$USER$_PROJS表中。

我想我需要使用USE TABLE(一旦用户成功登录他的个人资料)like 语句,但是当我尝试使用它时它会出错。

我已经搜索了网上几乎所有的资源,但无法找到解决方案!
任何帮助,将不胜感激 !!

负责创建表的代码:

public void createprojtable(String u){
        db.execSQL(
"create table if not exists "+u+"_PROJS(ID integer primary key autoincrement,
        PROJ_NAME text,DATE text); ");
    }

    public void insertProjEntry(String u,String projName,
            String projdate) {
        //db.execSQL("use table "+u+"_PROJS;");
        ContentValues newValues = new ContentValues();
        newValues.put("PROJ", projName);
        newValues.put("DATE", projdate);
        db.insert(u+"_PROJS", null, newValues);
    }
4

1 回答 1

0

看看 Android 中 Sqlite 的游标。您会获得特定于表格的游标。使用游标,您可以从特定表中读取数据。在更新数据时,您还可以将表名指定为参数之一。因此,您几乎可以使用现有的 API 获得所需的内容。

看看以下链接:

  1. Android SQLite 数据库和 ContentProvider - 教程
  2. android.database.sqlite
于 2013-05-24T08:56:06.340 回答