数据库Sqlite 的操作
1.创建数据库 extends SQLiteOpenHelper 需要继承SQLiteOpenHelper
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 | package com.example.usersqllite.domain; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class UserSqlLiteHelp extends SQLiteOpenHelper { public UserSqlLiteHelp(Context context) { super (context, "User.db" , null , 1 ); } // 创建数据库 初始化表结构 @Override public void onCreate(SQLiteDatabase db) { db.execSQL( "create table user ( id integer primary key autoincrement , name varchar(20), age INTEGER )" ); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } } |
2.数据的dao 增删改查
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 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | package com.example.usersqllite.dao; import java.util.ArrayList; import java.util.List; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import com.example.usersqllite.domain.User; import com.example.usersqllite.domain.UserSqlLiteHelp; public class UserDao { private UserSqlLiteHelp help; public UserDao(Context context) { help = new UserSqlLiteHelp(context); } /** * 添加数据 * * @throws Exception */ public void insert() throws Exception { SQLiteDatabase sb = help.getWritableDatabase(); ContentValues values = new ContentValues(); for ( int i = 0 ; i < 30 ; i++) { values.put( "name" , "aaa" + i); values.put( "age" , 10 + i); sb.insert( "User" , null , values); } sb.close(); } /** * 删除数据 * @return * * @throws Exception */ public boolean delete( int id) throws Exception { SQLiteDatabase sb = help.getWritableDatabase(); int result = sb.delete( "user" , "id=?" , new String[] { id + "" }); sb.close(); if (result> 0 ) { return true ; } else { return false ; } } /** * 修改数据 * * @throws Exception */ public boolean update( int id, String data) throws Exception { SQLiteDatabase sb = help.getWritableDatabase(); ContentValues values = new ContentValues(); values.put( "name" , data); int result = sb.update( "user" , values, "id=?" , new String[] { id + "" }); sb.close(); if (result> 0 ) { return true ; } else { return false ; } } /** * 查询数据 * * @return * * @throws Exception */ public List<User> findAll() throws Exception { SQLiteDatabase sb = help.getWritableDatabase(); /** * String table, String[] columns, String selection, String[] * selectionArgs, String groupBy, String having, String orderBy) */ List<User> list = new ArrayList<User>(); Cursor cursor = sb.query( "user" , new String[] { "id" , "name" , "age" }, null , null , null , null , null , null ); while (cursor.moveToNext()) { int id = cursor.getInt(cursor.getColumnIndex( "id" )); String name = cursor.getString(cursor.getColumnIndex( "name" )); int age = cursor.getInt(cursor.getColumnIndex( "age" )); User user = new User(id, name, age); list.add(user); user = null ; } sb.close(); return list; } } |