关于android 下SQLite _id does not exist

banyibanyi2 2011-07-06 04:34:10
我在查数据库的时候报了这个错 数据库的表有这个字段啊。不知道为什么报这个
DB.java

public class DB {
private static final String DATABASE_NAME = "notes.db";
private static final int DATABASE_VERSION= 1;

private static final String DATABASE_CREATE = "create table notes(_id integer primary key,note text not null,created integer);";

private static final String DATABASE_TABLE ="notes";

private static class DatabaseHelper extends SQLiteOpenHelper
{
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(DATABASE_CREATE);

}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVerSion, int newVersion) {
db.execSQL("drop table if exists " + DATABASE_TABLE);
onCreate(db);
}
}
private Context mCtx = null;
private DatabaseHelper dbHelper;
private SQLiteDatabase db;

public DB(Context ctx)
{
this.mCtx = ctx;
}

public DB open() throws SQLException
{
dbHelper = new DatabaseHelper(mCtx);
db = dbHelper.getWritableDatabase();
return this;
}

public void close()
{
dbHelper.close();
}

public static final String KEY_ROWID = "_id";
public static final String KEY_NOTE = "note";
public static final String KEY_CREATED = "created";

public Cursor getAll()
{
return db.rawQuery("select * from notes;",null);
}


}



package com.neusoft;

import android.app.ListActivity;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.widget.SimpleCursorAdapter;

public class DailyNote extends ListActivity {
private static final String TAG = "Note";

private DB mDbHelper;
private Cursor mNotesCursor;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.main);
// getListView().setEmptyView(findViewById(R.id.empty));
setAdepter();
}

// private String[] note_array = {
// "yangw-neu",
// "aht",
// "hlei",
// "gasolin"
// };

private void setAdepter()
{
mDbHelper = new DB(this);
mDbHelper.open();
fillData();

// ListAdapter adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,note_array);
// setListAdapter(adapter);
}

private void fillData()
{
try{
mNotesCursor = mDbHelper.getAll();
startManagingCursor(mNotesCursor);

String[] from = new String[]{DB.KEY_ROWID};
int[] to = new int[]{android.R.id.text1};

SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,android.R.layout.simple_list_item_1,mNotesCursor,from,to);
setListAdapter(adapter);
}catch(Exception e)
{
Log.e(TAG, "note error: " + e.getMessage());
}
}
}
...全文
246 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fontlose 2011-07-17
  • 打赏
  • 举报
回复
private static final int DATABASE_VERSION= 2;
改成2 触发onUpgrade重建一次表试试
wenzheng38 2011-07-17
  • 打赏
  • 举报
回复
数据表字段_id换个试试,不知是否是字段冲突了

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧