【发布时间】:2014-03-31 07:09:14
【问题描述】:
由于我是 android 编程新手,我正在创建一个表格并用 edittext 中的文本命名它。我该怎么做。搜索了问题,但没有得到任何答案。而且我的应用程序需要在运行时创建许多表。我正在使用 SQLiteOpenHelper 类,所以请帮我做。我已经创建了一个创建表的函数,并且在 onCreate()/onUpgrade 函数中什么也没写。
public void createClass(String table){
shuddhHelper = new DbHelper(shuddhContext);
SQLiteDatabase db = shuddhHelper.getWritableDatabase();
db.execSQL("CREATE TABLE " + table + " (" +
STUDENT_NAME + " TEXT NOT NULL, " +
ROLL_NO + " TEXT PRIMARY KEY, " +
STUDENT_PHONE + " INTEGER NOT NULL, " +
PARENT_PHONE + " INTEGER NOT NULL);"
);
}
并在 onClickListener 中像这样调用函数
className = "" + spinner.getSelectedItem().toString() + " "
+ sessionStart.getText().toString() + " - "
+ sessionEnd.getText().toString();
AMData classtable = new AMData(AddScreen.this);
classtable.open();
classtable.createClass(className);
classtable.close();
Intent myIntent = new Intent(AddScreen.this, NewStudent.class);
myIntent.putExtra("className", className);
startActivity(myIntent);
在这里打开和关闭函数:
public AMData open() {
shuddhHelper = new DbHelper(shuddhContext);
shuddhDataBase = shuddhHelper.getWritableDatabase();
return this;
}
public void close(){
shuddhHelper.close();
}
【问题讨论】:
-
您在表格名称中使用了空格...尝试添加 [ 和 ] 以包含该非常规名称
标签: android sqlite sqliteopenhelper