如何动态创建一个SQLite表,其列以List元素命名?

时间:2016-08-11 20:19:03

标签: java android sqlite android-sqlite

例如:
如果我创建一个列表人员,并且该列表包含名称,年龄,高度作为元素,那么将创建名称人员表,其中包含列名称,年龄,高度

我试过这段代码......

static final String DATABASE_NAME="MyDatabase";
    static final int DATABASE_VERSION = 1;
    static String TABLE_NAME=null;
    static String CREATE_TABLE = null;
    static List<String> COLUMNS = null;
    static String DROP_TABLE = null;

    private Context context;

    public DBHandler(Context context,String Table_Name,List<String> columns,){
        super(context,DATABASE_NAME,null,DATABASE_VERSION);
        this.context = context;
        this.TABLE_NAME=Table_Name;
        this.COLUMNS = columns;
        CREATE_TABLE ="CREATE TABLE "+TABLE_NAME+"("+COLUMNS.get(0)+" INTEGER PRIMARY KEY, "+COLUMNS.get(1)+" TEXT,"+COLUMNS.get(2)+" TEXT,"+COLUMNS.get(3)+" TEXT,"+COLUMNS.get(4)+" TEXT)";
        DROP_TABLE = "DROP TABLE IF EXISTS "+TABLE_NAME;
    }
    public DBHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, DATABASE_NAME, factory, DATABASE_VERSION);
        this.context=context;
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL(CREATE_TABLE);
    }

0 个答案:

没有答案