alltolove 发表于 2017-10-20 06:30:54

android编程6.4.6

修改activity_main.xml文件<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
      android:id="@+id/create_database"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:text="create database"/>
    <Button
      android:id="@+id/add_data"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:text="Add data"/>
    <Button
      android:id="@+id/update_data"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:text="Update data"/>
    <Button
      android:id="@+id/delete_data"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:text="Delete data"/>
    <Button
      android:id="@+id/query_data"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:text="Query data"/>

</LinearLayout>

修改mainactivity.java文件package com.example.xinwei.databasetest;

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

public class MainActivity extends AppCompatActivity {
    private MyDatabaseHelper dbHelper;
    static String TAG="MainActivity";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      dbHelper = new MyDatabaseHelper(this,"BookStore.db",null,2);
      Button createDatabase = (Button)findViewById(R.id.create_database);
      createDatabase.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                dbHelper.getWritableDatabase();
            }
      });
      addData();
      updateData();
      deleteData();
      queryData();
    }

    private void queryData() {
      Button queryData = (Button)findViewById(R.id.query_data);
      queryData.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                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(TAG,"book name is"+name);
                        Log.d(TAG,"book author is"+author);
                        Log.d(TAG,"book pages is"+pages);
                        Log.d(TAG,"book price is"+price);
                  } while (cursor.moveToNext());
                }
            }
      });
    }

    private void deleteData() {
      Button deleteButton = (Button)findViewById(R.id.delete_data);
      deleteButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SQLiteDatabase db = dbHelper.getWritableDatabase();
                db.delete("book","pages>?",new String[]{"500"});
            }
      });
    }

    private void updateData() {
      Button updateData = (Button)findViewById(R.id.update_data);
      updateData.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SQLiteDatabase db=dbHelper.getWritableDatabase();
                ContentValues values=new ContentValues();
                values.put("price",10.99);
                db.update("book",values,"name=?",new String[]{"The Da Vinci Code"});
            }
      });
    }

    private void addData() {
      Button addData = (Button)findViewById(R.id.add_data);
      addData.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SQLiteDatabase db = dbHelper.getWritableDatabase();
                ContentValues values=new ContentValues();
                values.put("name","The Da Vinci Code");
                values.put("author","Dan Brown");
                values.put("pages",454);
                values.put("price",16.96);
                db.insert("book",null,values);
                values.clear();
                values.put("name","The Lost Temple");
                values.put("author","Dan Brown");
                values.put("pages",510);
                values.put("price",19.95);
                db.insert("book",null,values);
                values.clear();
            }
      });
    }
}

里面的queryData()函数就是查询的方法,点一下query data按钮在控制台就会查询到数据了

不自律的笨鸟 发表于 2021-5-15 07:31:21

看来还有很多东西要学习啊!
页: [1]
查看完整版本: android编程6.4.6