android创建数据库和表
16lz
2021-01-23
先创建一个包xx.xx.xx.db
在包中创建库和表BlackNumberOpenHelper
import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;public class BlackNumberOpenHelper extends SQLiteOpenHelper {public BlackNumberOpenHelper(Context context) {super(context, "blacknumber.db", null, 1);}@Overridepublic void onCreate(SQLiteDatabase db) {//创建数据库中表的方法db.execSQL("create table blacknumber " +"(_id integer primary key autoincrement , phone varchar(20), mode varchar(5));");}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}}
然后创建包xx.xx.xx.db.dao
在包里面创建文件处理表的增删改查
public class BlackNumberDao {private BlackNumberOpenHelper blackNumberOpenHelper;//BlackNumberDao单例模式//1,私有化构造方法private BlackNumberDao(Context context){//创建数据库已经其表机构blackNumberOpenHelper = new BlackNumberOpenHelper(context);}//2,声明一个当前类的对象private static BlackNumberDao blackNumberDao = null;//3,提供一个静态方法,如果当前类的对象为空,创建一个新的public static BlackNumberDao getInstance(Context context){if(blackNumberDao == null){blackNumberDao = new BlackNumberDao(context);}return blackNumberDao;}/**增加一个条目 * @param phone拦截的电话号码 * @param mode拦截类型(1:短信2:电话3:拦截所有(短信+电话)) */public void insert(String phone,String mode){//1,开启数据库,准备做写入操作SQLiteDatabase db = blackNumberOpenHelper.getWritableDatabase();ContentValues values = new ContentValues();values.put("phone", phone);values.put("mode", mode);db.insert("blacknumber", null, values);db.close();}/**从数据库中删除一条电话号码 * @param phone删除电话号码 */public void delete(String phone){SQLiteDatabase db = blackNumberOpenHelper.getWritableDatabase();db.delete("blacknumber", "phone = ?", new String[]{phone});db.close();}/** * 根据电话号码去,更新拦截模式 * @param phone更新拦截模式的电话号码 * @param mode要更新为的模式(1:短信2:电话3:拦截所有(短信+电话) */public void update(String phone,String mode){SQLiteDatabase db = blackNumberOpenHelper.getWritableDatabase();ContentValues contentValues = new ContentValues();contentValues.put("mode", mode);db.update("blacknumber", contentValues, "phone = ?", new String[]{phone});db.close();}}
更多相关文章
- android短信监听
- Android 内功心法(1.2)——android常用设计模式之工厂模式
- Android如何实现获取短信验证码的功能
- Android P HIDL服务绑定模式与直通模式的分析
- android mvp模式讲解