3

我有在 Android 平台上使用的 sqlite 数据库。

我在运行时创建了表。我的 SQL 是:

CREATE TABLE funcs ( id INTEGER PRIMARY KEY AUTOINCREMENT, func_name TEXT, param NONE)

此表中的每一行都表示我的程序中的函数调用。并且参数为每一行更改它的类型。

而且,我已经创建了预设一行表格的类

class FunctionDB
{
    private ContentValues mContentValues;

    public FunctionDB(Cursor cursor)
    {
        DatabaseUtils.cursorRowToContentValues(cursor, this.mContentValues);
    }

    public int getID()
    {
        return this.mContentValues.getAsInteger("id");
    }

    public String getName()
    {
        return this.mContentValues.getAsString("func_name");
    }

    public ??? getParam()
    {
        return this.mContentValues.getAs???("param");
    }

}

我希望这个类是通用函数类型。这意味着,我想通过检查函数的名称来确定param列的类型。

如何param在我的代码中接收列的通用类型?

4

2 回答 2

1

根据文档,读取某些值的通用方法是使用get,它返回一个Object.

于 2012-10-14T20:35:55.553 回答
0

我想不出一个干净的方法来做到这一点。

typeof(columnName)

将数据类型作为字符串返回。

String dataType = this.typeof("param");

if (dataType.equalsIgnoreCase("TEXT"){

if (dataType.equalsIgnoreCase("INTEGER"){

...
于 2012-10-14T20:38:28.413 回答