我创建了一个应用,通过EditText
从用户那里获取价值并将其存储在Database
中。对于那件事我没有任何疑问。现在我必须在ListView
中显示数据库的数据。在这里,我使用AlertDialog
来显示它们。
我的代码是
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
SQLiteDatabase db;
db=openOrCreateDatabase("Mute_List", MODE_APPEND, null);
db.execSQL("create table if not exists user(Number INTEGER);");
Button add=(Button)findViewById(R.id.button1);
add.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
EditText num=(EditText)findViewById(R.id.editText1);
SQLiteDatabase db;
db=openOrCreateDatabase("Mute_List", MODE_APPEND, null);
db.execSQL("create table if not exists user(Number INTEGER);");
String cno=num.getText().toString();
if(cno.length()==0){
show("Error", "Field Cannot be Empty");
}else{
db.execSQL("insert into user values('"+cno+"');");
show("Success", "Added Successfully");
}
}
});
Button show=(Button)findViewById(R.id.button2);
show.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db;
db=openOrCreateDatabase("Mute_List", MODE_APPEND, null);
db.execSQL("create table if not exists user(Number INTEGER);");
Cursor c=db.rawQuery("select*from user",null);
if (c.getCount()==0)
{
show("Error","No Records Found" );
//Toast.makeText(getApplicationContext(), "No Records Found", Toast.LENGTH_SHORT).show();
return;
}
StringBuffer buffer=new StringBuffer();
while (c.moveToNext())
{
buffer.append(c.getString(0)+"\n");
}
show("User Details", buffer.toString());
}
});
}
public void show(String title, String message) {
AlertDialog.Builder builder=new AlertDialog.Builder(SecondActivity.this);
builder.setCancelable(true);
builder.setTitle(title);
builder.setMessage(message);
builder.show();
}
请帮帮我。
答案 0 :(得分:0)
变化
Cursor c=db.rawQuery("select*from user",null);
到
Cursor c=db.rawQuery("select * from user",null);
也不要在activity中执行db create table命令。