Java 在将数据插入sqlite后继续获取错误
一旦我打开应用程序,它就会提示我,不幸的是,数据库已经停止Java 在将数据插入sqlite后继续获取错误,java,android,sqlite,Java,Android,Sqlite,一旦我打开应用程序,它就会提示我,不幸的是,数据库已经停止 public class Databasetest extends Activity { private CommentDataSource datasource; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.acti
public class Databasetest extends Activity {
private CommentDataSource datasource;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_databasetest);
datasource = new CommentDataSource(this);
datasource.open();
}
}
下面是我得到的错误,有人能告诉我这是什么意思吗
(1) near "studentinfo_db": syntax error
这是我的数据源:
public class CommentDataSource {
private SQLiteDatabase db;
private MySQLiteHelper dbHlp;
private String[] allColumns = { StudentInfo.COL_ROW_ID,
StudentInfo.COL_STUDENT_NAME };
public CommentDataSource(Context context) {
dbHlp = new MySQLiteHelper(context);
}
public void open() throws SQLException {
db= dbHlp.getWritableDatabase();
}
public void close() {
dbHlp.close();
}
}
这是我的MySQLiteHelper:
public class MySQLiteHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "studentsresult.db";
private static final int DATABASE_VERSION = 1;
public MySQLiteHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL(StudentInfo.SQL_TABLE_NAME);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(MySQLiteHelper.class.getName(),
"Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS " + StudentInfo.SQL_TABLE_NAME);
onCreate(db);
}
}
上面我已经上传了我的源代码。你应该像这样在create中创建一个表
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL("CREATE TABLE "+StudentInfo.SQL_TABLE_NAME);
}
修改onCreate(SQLiteDatabase){},如下所示
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL("CREATE TABLE "+ StudentInfo.SQL_TABLE_NAME + "(" +
StudentInfo.COL_ROW_ID + " INT PRIMARY KEY," +
StudentInfo.COL_STUDENT_NAME+ " TEXT)" );
}
你能分享这个类的代码吗?
CommentDataSource
需要更多的代码来理解你的问题。发布你的查询,这是一个在线抛出的错误(studentinfo_db)我认为查询语句中有错误