Android(安卓)SQLite & Trigger
16lz
2021-01-25
1、Transaction
事务在将要对数据库进行批量操作,并且必须保证所有操作都成功时才通过时使用。
SQLiteDatabase.beginTransaction(); // 开启一个事务try { ... // do somethings SQLiteDatabase.setTransactionSuccessful(); //设置事务标志为true} try {} finally { SQLiteDatabase.endTransaction(); // 结束事务}
默认标志为false,结束事务时,执行rollback操作,即开启事务到结束事务这段时间对数据库的操作将会撤销,
当设置标志为true(setTransactionSuccessful())时,数据库的处理将commit.
2、 Trigger(触发器)
// 创建触发器:CREATE TRIGGER triggerName BEFORE|AFTER INSERT|DELETE|UPDATE of cloumn1,cloumn2... ON tableName[FOR EACH ROW|FOR EACH STATEMENT] // SQLite触发器仅支持FOR EACH ROW(对于每一行),不支持FOR EACH STATEMENT(对于每一项)[WHEN 判断条件]BEGIN... SQL语句 // 我们需要注意的一点是在begin与end之间的操作中,对前面作用表的新旧数据使用new和old进行指向END// 删除:DROP TRIGGER IF EXISTS triggeName;Trigger在数据库中是以对象存在的,所以triggerName必须唯一。
3、 SQLite 方法:
PHONE_NUMBERS_EQUAL(number1, number2, 0) 只能匹配号码的后七位, 第三个参数,0,是泰国的标准
REPLACE(column, str1, str2) 替换,可用于去空格,横线
union合并多个select语句的结果集,select语句必须拥有相同数量、相似数据类型的列。
更多相关文章
- [Android(安卓)Pro] service中显示一个dialog 或者通过windowman
- Android(安卓)如何对sqlite数据库进行增删改[insert、update和de
- 【Android】获取控件的宽和高
- Fragment Management
- Android(安卓)有两种办法可以监控SDCARD的状态
- Android(安卓)-- 图片异步上传到PHP服务器
- Android(安卓)数据库 大量插入 事务开启
- Android(安卓)Gson 操作
- Android短信操作(通过内容提供者)