博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLite 数据库增删改查
阅读量:5078 次
发布时间:2019-06-12

本文共 4798 字,大约阅读时间需要 15 分钟。

布局:

1 
2
10 11
16 17
22 23
28
33 34 35

Activivy:

1 public class MainActivity extends AppCompatActivity implements View.OnClickListener {  2   3     protected Button mInsertBtn;  4     protected Button mDeleteBtn;  5     protected Button mUpdateBtn;  6     protected Button mQueryBtn;  7     private DBHelper mHelper;  8     private SQLiteDatabase mDatabase;  9  10     @Override 11     protected void onCreate(Bundle savedInstanceState) { 12         super.onCreate(savedInstanceState); 13         super.setContentView(R.layout.activity_main); 14         initView(); 15  16         mHelper = new DBHelper(this); 17         mDatabase = mHelper.getWritableDatabase(); 18     } 19  20  21     private void initView() { 22         mInsertBtn = (Button) findViewById(R.id.insert_btn); 23         mInsertBtn.setOnClickListener(MainActivity.this); 24         mDeleteBtn = (Button) findViewById(R.id.delete_btn); 25         mDeleteBtn.setOnClickListener(MainActivity.this); 26         mUpdateBtn = (Button) findViewById(R.id.update_btn); 27         mUpdateBtn.setOnClickListener(MainActivity.this); 28         mQueryBtn = (Button) findViewById(R.id.query_btn); 29         mQueryBtn.setOnClickListener(MainActivity.this); 30     } 31  32     @Override 33     public void onClick(View view) { 34         if (view.getId() == R.id.insert_btn) { 35             insertData(); 36         } else if (view.getId() == R.id.delete_btn) { 37             deleteData(); 38         } else if (view.getId() == R.id.update_btn) { 39             updateData(); 40         } else if (view.getId() == R.id.query_btn) { 41             queryData(); 42         } 43     } 44  45     // 表名 46     // null。数据库如果插入的数据为null,会引起数据库不稳定。为了防止崩溃,需要传入第二个参数要求的对象 47     // 如果插入的数据不为null,没有必要传入第二个参数避免崩溃,所以为null 48     // 插入的数据 49     private void insertData() { 50         ContentValues values = new ContentValues(); 51         values.put(DBHelper.NAME, "鹿晗"); 52         values.put(DBHelper.AGE, 17); 53         mDatabase.insert(DBHelper.TABLE_NAME, null, values); 54         Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show(); 55     } 56  57     // 表名 58     // 删除条件 59     // 满足删除的值 60     private void deleteData() { 61         int count = mDatabase.delete(DBHelper.TABLE_NAME, DBHelper.NAME + " = ?", new String[]{"鹿晗"}); 62         Toast.makeText(this, "删除数量:"+count, Toast.LENGTH_SHORT).show(); 63     } 64  65     // 表名 66     // 修改后的数据 67     // 修改条件 68     // 满足修改的值 69     private void updateData() { 70         ContentValues values = new ContentValues(); 71         values.put(DBHelper.NAME, "小茗同学"); 72         values.put(DBHelper.AGE, 18); 73         int count = mDatabase 74                 .update(DBHelper.TABLE_NAME, values, DBHelper.NAME + " = ?", new String[]{"鹿晗"}); 75         Toast.makeText(this, "修改成功:" + count, Toast.LENGTH_SHORT).show(); 76     } 77  78     // 表名 79     // 查询字段 80     // 查询条件 81     // 满足查询的值 82     // 分组 83     // 分组筛选关键字 84     // 排序 85     private void queryData() { 86         Cursor cursor = mDatabase.query(DBHelper.TABLE_NAME, 87                 new String[]{DBHelper.NAME, DBHelper.AGE}, 88                 DBHelper.AGE + " > ?", 89                 new String[]{"16"}, 90                 null, 91                 null, 92                 DBHelper.AGE + " desc");// 注意空格! 93  94         int nameIndex = cursor.getColumnIndex(DBHelper.NAME); 95         int ageIndex = cursor.getColumnIndex(DBHelper.AGE); 96         while (cursor.moveToNext()) { 97             String name = cursor.getString(nameIndex); 98             String age = cursor.getString(ageIndex); 99 100             Log.d("1507", "name: " + name + ", age: " + age);101         }102 103     }104 105 }

创建数据库:

1 public class DBHelper extends SQLiteOpenHelper { 2  3     // 数据库文件名 4     public static final String DB_NAME = "my_database.db"; 5     // 数据库表名 6     public static final String TABLE_NAME = "t_person"; 7     // 数据库版本号 8     public static final int DB_VERSION = 1; 9 10     public static final String NAME = "name";11     public static final String AGE = "age";12 13     public DBHelper(Context context) {14         super(context, DB_NAME, null, DB_VERSION);15     }16 17     // 当数据库文件创建时,执行初始化操作,并且只执行一次18     @Override19     public void onCreate(SQLiteDatabase db) {20         // 建表21         String sql = "create table " +22                 TABLE_NAME +23                 "(_id integer primary key autoincrement, " +24                 NAME + " varchar, " +25                 AGE + " varchar"26                 + ")";27 28         db.execSQL(sql);29     }30 31     // 当数据库版本更新执行该方法32     @Override33     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {34 35     }36 }

 

转载于:https://www.cnblogs.com/SongYongQian/p/7879579.html

你可能感兴趣的文章
windows下编译FreeSwitch
查看>>
git .gitignore 文件不起作用
查看>>
Alan Turing的纪录片观后感
查看>>
c#自定义控件中的事件处理
查看>>
django Models 常用的字段和参数
查看>>
IOS--沙盒机制
查看>>
使用 JointCode.Shuttle 访问任意 AppDomain 的服务
查看>>
sqlite的坑
查看>>
digitalocean --- How To Install Apache Tomcat 8 on Ubuntu 16.04
查看>>
【题解】[P4178 Tree]
查看>>
Jquery ui widget开发
查看>>
关于indexOf的使用
查看>>
英语单词
查看>>
Mongo自动备份
查看>>
cer证书签名验证
查看>>
新手Python第一天(接触)
查看>>
【bzoj1029】[JSOI2007]建筑抢修
查看>>
synchronized
查看>>
codevs 1080 线段树练习
查看>>
[No0000195]NoSQL还是SQL?这一篇讲清楚
查看>>