Androidx学习笔记(20)-- SQLite创建 增删改查(普通方式和API
发布时间:2020-12-12 19:34:28 所属栏目:百科 来源:网络整理
导读:创建数据库 //数据库创建时,此方法会调用@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL("create table person(_id integer primary key autoincrement,name char(10),salary char(20),phone integer(20))");} 测试数据库 初始化成员 //此
创建数据库//数据库创建时,此方法会调用 @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table person(_id integer primary key autoincrement,name char(10),salary char(20),phone integer(20))"); } 测试数据库初始化成员//此时测试框架还没有初始化完毕,没有虚拟上下文对象 // private MyOpenHelper oh = new MyOpenHelper(getContext(),"people.db",null,1); private MyOpenHelper oh; private SQLiteDatabase db; //测试框架初始化完毕之后,在测试方法执行之前,此方法调用 @Override protected void setUp() throws Exception { super.setUp(); oh = new MyOpenHelper(getContext(),1); db = oh.getWritableDatabase(); } 关闭//测试方法执行完毕之后,此方法调用 @Override protected void tearDown() throws Exception { // TODO Auto-generated method stub super.tearDown(); db.close(); } 插入public void insert(){ // db.execSQL("insert into person (name,salary,phone)values(?,?,?)",new Object[]{"小志的老婆[1]","13000",138438}); // db.execSQL("insert into person (name,new Object[]{"小志的儿子",14000,"13888"}); db.execSQL("insert into person (name,new Object[]{"小志","13888"}); } 注意:不检测数据类型,全部都是字符串类型保存的,不保存错误的数据类型,所以要注意书写正确
删除public void delete(){ <span style="white-space:pre"> </span>db.execSQL("delete from person where name = ?",new Object[]{"小志"}); <span style="white-space:pre"> </span>} 修改public void update(){ db.execSQL("update person set phone = ? where name = ?",new Object[]{186666,"小志的儿子"}); } 查询public void select(){ Cursor cursor = db.rawQuery("select name,salary from person",null); while(cursor.moveToNext()){ //通过列字段名获取列的值 String name = cursor.getString(cursor.getColumnIndex("name")); //通过列索引获取列的值 String salary = cursor.getString(1); System.out.println(name + ";" + salary); } } API调用(增删改查)public void insertApi(){ //把要插入的数据全部封装至ContentValues对象 ContentValues values = new ContentValues(); values.put("name","游天龙"); values.put("phone","15999"); values.put("salary",16000); db.insert("person",values); } public void deleteApi(){ int i = db.delete("person","name = ? and _id = ?",new String[]{"小志的儿子","3"}); System.out.println(i); } public void updateApi(){ ContentValues values = new ContentValues(); values.put("salary",26000); int i = db.update("person",values,"name = ?",new String[]{"游天龙"}); System.out.println(i); } public void selectApi(){ Cursor cursor = db.query("person",null); while(cursor.moveToNext()){ String name = cursor.getString(cursor.getColumnIndex("name")); String phone = cursor.getString(cursor.getColumnIndex("phone")); String salary = cursor.getString(cursor.getColumnIndex("salary")); System.out.println(name + ";" + phone + ";" + salary); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |