Android数据库 — — —查询数据

Posted android开发进阶者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android数据库 — — —查询数据相关的知识,希望对你有一定的参考价值。

package com.example.datebasetest;

import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

private Button btn;
private DatabaseHelper dbHelper;
private Button addButton;
private Button updateData;
private Button deleteData;
private Button queryData;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btn = (Button)findViewById(R.id.create_database);
dbHelper = new DatabaseHelper(this,"BookStore.db",null,2);
addButton = (Button)findViewById(R.id.add_data);
updateData = (Button)findViewById(R.id.update_data);
deleteData = (Button)findViewById(R.id.delete_data);
queryData = (Button)findViewById(R.id.query_data);

btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dbHelper.getWritableDatabase();
}
});

addButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name","wz");
values.put("author","xx");
values.put("price",1.0);
values.put("pages",156);
db.insert("Book",null,values);
values.clear();
values.put("name","wz2");
values.put("author","xx2");
values.put("price",2.0);
values.put("pages",122);
db.insert("Book",null,values);


}
});

updateData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("price",10.99);
db.update("Book", values, "name=?", new String[]{"wz"});
}
});

deleteData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete("Book", "pages > ?", new String[]{"120"});
Toast.makeText(MainActivity.this,"删除成功",Toast.LENGTH_SHORT).show();
}
});

queryData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
Cursor cursor = db.query("Book",null,null,null,null,null,null);
if(cursor.moveToFirst()){
do{
String name = cursor.getString(cursor.getColumnIndex("name"));
String author = cursor.getString(cursor.getColumnIndex("author"));
int pages = cursor.getInt(cursor.getColumnIndex("pages"));
double price = cursor.getDouble(cursor.getColumnIndex("price"));
Log.d("Message","name"+name);
Log.d("Message","author"+author);
Log.d("Message","pages"+pages);
Log.d("Message","price"+price);
}while(cursor.moveToNext());
}
cursor.close();

}
});
}
}

以上是关于Android数据库 — — —查询数据的主要内容,如果未能解决你的问题,请参考以下文章

在 Android 中查询大型数据集的最快方法

求大神指点 android如何连接mysql进行数据查询

Android Room 数据库中的查询支持

如何将 SQLite 数据库(SQLite Firefox 扩展)连接到 Android 应用程序,以便 android 2.1 查询并插入数据库

Android实现归属地查询功能

基于Android的地铁查询系统app