1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | < Button android:id = "@+id/createButton" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:layout_below = "@id/hello_world" android:text = "create database" /> < Button android:id = "@+id/updateButton" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:layout_below = "@id/createButton" android:text = "update database" /> < Button android:id = "@+id/insertButton" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:layout_below = "@id/updateButton" android:text = "insert database" /> < Button android:id = "@+id/updateRecordButton" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:layout_below = "@id/insertButton" android:text = "update record" /> < Button android:id = "@+id/queryRecordButton" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:layout_below = "@id/updateRecordButton" android:text = "Query record" /> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | package com.example.sqlite_01; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class DatabaseHelper extends SQLiteOpenHelper{ private static final int VERSION = 1 ; public DatabaseHelper(Context context, String name, CursorFactory factory, int version) { super (context, name, factory, version); } public DatabaseHelper(Context context, String name, int version) { this (context, name, null , version); } public DatabaseHelper(Context context, String name) { this (context, name, VERSION); } //第一次创建数据库的时候执行,实际上是在第一次得到SQLiteDatabase对象的时候调用 @Override public void onCreate(SQLiteDatabase db) { System.out.println( "Create a database" ); db.execSQL( "create table user(id int, name varchar(20))" ); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { System.out.println( "Update a database" ); } /* * abd shell进入当前App的目录下的databases目录下就可以看到创建的数据库 * 打开数据库sqlite3 test_db * 查看当前数据库里的表以及创建表的语句 .schema */ } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | package com.example.sqlite_01; import android.support.v7.app.ActionBarActivity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends ActionBarActivity { private Button createButton = null ; private Button updateButton = null ; private Button insertButton = null ; private Button updateRecordButton = null ; private Button queryRecordButton = null ; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_main); createButton = (Button) findViewById(R.id.createButton); updateButton = (Button) findViewById(R.id.updateButton); insertButton = (Button) findViewById(R.id.insertButton); updateRecordButton = (Button) findViewById(R.id.updateRecordButton); queryRecordButton = (Button) findViewById(R.id.queryRecordButton); createButton.setOnClickListener( new CreateListener()); updateButton.setOnClickListener( new UpdateListener()); insertButton.setOnClickListener( new InsertListener()); updateRecordButton.setOnClickListener( new UpdateRecordListener()); queryRecordButton.setOnClickListener( new QueryListener()); } class CreateListener implements OnClickListener{ @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity. this , "test_db" ); SQLiteDatabase db = dbHelper.getReadableDatabase(); //执行了这一句才会创建数据库 } } class UpdateListener implements OnClickListener{ @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity. this , "test_db" , 2 ); SQLiteDatabase db = dbHelper.getReadableDatabase(); //执行了这一句才会创建数据库 } } class InsertListener implements OnClickListener{ @Override public void onClick(View v) { ContentValues contentValues = new ContentValues(); contentValues.put( "id" , 1 ); contentValues.put( "name" , "umgsai" ); DatabaseHelper dbHelper = new DatabaseHelper(MainActivity. this , "test_db" , 2 ); SQLiteDatabase db = dbHelper.getWritableDatabase(); db.insert( "user" , null , contentValues); } } class UpdateRecordListener implements OnClickListener{ @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity. this , "test_db" , 2 ); SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put( "name" , "admin" ); db.update( "user" , values, "id = ?" , new String[]{ "1" }); } } class QueryListener implements OnClickListener{ @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity. this , "test_db" , 2 ); SQLiteDatabase db = dbHelper.getReadableDatabase(); //db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy) Cursor cursor = db.query( "user" , new String[]{ "id" , "name" }, "id = ?" , new String[]{ "1" }, null , null , "id" ); while (cursor.moveToNext()) { String name = cursor.getString(cursor.getColumnIndex( "name" )); System.out.println( "name>>>" + name); } } } } |
原文:http://www.blogjava.net/hejian811/archive/2014/11/19/420308.html