android sqlite查询问题

furway 2013-09-20 02:33:11
代码:
package com.cxw.sqliteopenhelper;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;

public class OpenHelperMainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_open_helper_main);
MyDBHelper helper=new MyDBHelper(this);

helper.insert();
helper.query();
}
class MyDBHelper extends SQLiteOpenHelper{
private static final String CREATE_TABLE_SQL=" create table TempTb1(_id integer,name text) ";
private SQLiteDatabase db;
MyDBHelper(Context c)
{
super(c,"test.db",null,2);

}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub

db.execSQL(CREATE_TABLE_SQL);

}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub

}
private void insert()
{
String sql="insert into TempTb1(_id,name) values(1,'zhangsan')";
getWritableDatabase().execSQL(sql);
}
private void query()
{
Cursor c=getWritableDatabase().query("TempTb1", null, null, null, null, null, null);
if(c.moveToFirst())
{
for(int i=0;i<c.getCount();i++)
{
c.move(i);
int id=c.getInt(0);

String name=c.getString(1);

System.out.println(id+":"+name);


}
c.close();
}
}

}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_open_helper_main, menu);
return true;
}

}
错误提示:

09-20 06:21:55.300: W/dalvikvm(2302): threadid=1: thread exiting with uncaught exception (group=0x40a70930)
09-20 06:21:55.330: E/AndroidRuntime(2302): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.cxw.sqliteopenhelper/com.cxw.sqliteopenhelper.OpenHelperMainActivity}: android.database.CursorIndexOutOfBoundsException: Index 17 requested, with a size of 17
09-20 06:21:55.330: E/AndroidRuntime(2302): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
09-20 06:21:55.330: E/AndroidRuntime(2302): at android.database.AbstractWindowedCursor.getInt(AbstractWindowedCursor.java:68)
09-20 06:21:55.330: E/AndroidRuntime(2302): at com.cxw.sqliteopenhelper.OpenHelperMainActivity$MyDBHelper.query(OpenHelperMainActivity.java:57)

...全文
99 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,351

社区成员

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

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