Android使用谷歌封装好的api进行增删改查
2018-11-17 22:17
288 查看
本博文是对上一篇使用sql语句进行增删改查的修改,上一篇地址:
https://blog.csdn.net/liyunfu233/article/details/84193577
本篇主界面代码:
package com.example.createsqlitedemo02; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Toast; public class MainActivity extends AppCompatActivity { MyOpenHelper myOpenHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myOpenHelper=new MyOpenHelper(getApplicationContext()); //打开或者创建数据库 如果是第一次就是创建 //SQLiteDatabase sqLiteDatabase=myOpenHelper.getWritableDatabase(); //打开或创建数据库 如果是第一次就是创建 如果磁盘满了只返回一个可读的 SQLiteDatabase sqLiteDatabase=myOpenHelper.getReadableDatabase(); } //点击按钮增加一条记录 public void click1(View view) { //[1]获取数据库对象 SQLiteDatabase db=myOpenHelper.getReadableDatabase(); //[2]执行增加一条的sql语句 //db.execSQL("insert into info(name,phone) values(?,?)",new Object[]{"张三","138888"}); /** * table 表名 * contentvalues 内部封装了一个map key:对应列的名字 value对应的值 * */ ContentValues values=new ContentValues(); values.put("name","王五"); values.put("phone","110"); //返回值代表插入新行的id long insert=db.insert("info",null,values); //[3]数据库用完需要关闭 db.close(); if (insert>0){ Toast.makeText(getApplicationContext(),"添加成功",Toast.LENGTH_SHORT).show(); }else { Toast.makeText(getApplicationContext(),"添加失败",Toast.LENGTH_SHORT).show(); } } //删除 public void click2(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); //db.execSQL("delete from info where name=?",new Object[]{"张三"}); //返回值代表影响的行数 int delete=db.delete("info","name=?",new String[]{"王五"}); db.close(); Toast.makeText(getApplicationContext(),"删除了"+delete+"行",Toast.LENGTH_SHORT).show(); } //更新 public void click3(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); //db.execSQL("update info set phone=? where name=?",new Object[]{"139999"}); ContentValues values=new ContentValues(); values.put("phone","145"); int update=db.update("info",values,"name=?",new String[]{"王五"}); db.close(); Toast.makeText(getApplicationContext(),"更新了"+update+"行",Toast.LENGTH_SHORT).show(); } //查找 public void click4(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); //colums 代表你要查询的列 Cursor cursor=db.query("info",new String[]{"phone"},"name=?",new String[]{"王五"},null,null,null); //Cursor cursor=db.rawQuery("select * from info",null); if (cursor!=null&&cursor.getCount()>0){ while (cursor.moveToNext()){ //columindex代表列的索引 String phone=cursor.getString(0); System.out.println("phone"+phone); } } } }
下面是纯使用sql语句进行的增删改查
package com.example.a15114.createsqlitedemo; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; public class MainActivity extends AppCompatActivity { MyOpenHelper myOpenHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myOpenHelper=new MyOpenHelper(getApplicationContext()); //打开或者创建数据库 如果是第一次就是创建 //SQLiteDatabase sqLiteDatabase=myOpenHelper.getWritableDatabase(); //打开或创建数据库 如果是第一次就是创建 如果磁盘满了只返回一个可读的 SQLiteDatabase sqLiteDatabase=myOpenHelper.getReadableDatabase(); } //点击按钮增加一条记录 public void click1(View view) { //[1]获取数据库对象 SQLiteDatabase db=myOpenHelper.getReadableDatabase(); //[2]执行增加一条的sql语句 db.execSQL("insert into info(name,phone) values(?,?)",new Object[]{"张三","138888"}); //[3]数据库用完需要关闭 db.close(); } //删除 public void click2(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); db.execSQL("delete from info where name=?",new Object[]{"张三"}); db.close(); } //更新 public void click3(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); db.execSQL("update info set phone=? where name=?",new Object[]{"139999"}); db.close(); } //查找 public void click4(View view) { SQLiteDatabase db=myOpenHelper.getReadableDatabase(); Cursor cursor=db.rawQuery("select * from info",null); if (cursor!=null&&cursor.getCount()>0){ while (cursor.moveToNext()){ //columindex代表列的索引 String name=cursor.getString(1); String phone=cursor.getString(2); System.out.println("name:"+name+"---------"+phone); } } } }
可以看出在对一个数据库进行操作时谷歌api更好用,他封装了 insert 添加方法 delete删除方法
update更新方法 以及 query 查询方法
但是对多个数据库进行操作时 纯sql语句 更好使用,他可以随意修改sql语句。
阅读更多相关文章推荐
- Android使用谷歌封装好的api增删查改
- Android数据库二:使用谷歌封装好的api对数据库增删改查
- 用谷歌封装好的API进行数据库增删查改(crud)
- Android对SQLite数据库进行封装使用反射来进行表的增删改查
- Android(java)学习笔记193:利用谷歌API对数据库增删改查(推荐使用)
- Android中使用SQLiteOpenHelper对SQLite数据库进行增删改查
- 谷歌取得巨大胜利,美联邦法庭裁定 Android 对 Java API 属于“公平使用”
- Android安卓使用iosocket进行Socket通信简单封装优雅写代码
- Android中使用OrmLite来对SQLite数据库进行CRUD(增删改查)解析
- 使用Android原生的Api进行GPS定位获取位置信息
- 【Android】Retrofit的使用(3)-对Retrofit进行简单的封装
- Android AIDL技术实战项目-音乐播放器(二)-使用retrofit完成音乐API的封装
- Android版本:使用API进行语音到文本的转换
- 用谷歌封装号的api增删改查
- 使用uiautomator的python封装进行android的UI测试
- Android上,使用FusionCharts进行图表控件封装
- Android开发之GridView的使用(解读谷歌官方API)
- 封装android 通讯使用二进制进行数据交换 2个必要的读取,写入操作
- Android 使用SQLite进行数据的增删查改
- 谷歌取得巨大胜利,美联邦法庭裁定 Android 对 Java API 属于“合理使用”