Music -Database -4(数据库触发器和View的学习)
2010-05-06 14:21
302 查看
db.execSQL("CREATE TRIGGER IF NOT EXISTS audio_meta_cleanup DELETE ON audio_meta " + "BEGIN " + "DELETE FROM audio_genres_map WHERE audio_id = old._id;" + "DELETE FROM audio_playlists_map WHERE audio_id = old._id;" + "END");
触发器:好处当删除,更新,创建时候会自动执行。比如我要删掉music中的一首歌的时候,那要把和该首歌的所有信息一起删除。所有用到了触发器,当delete的时候,删除掉 audio_meta中的id同时 删除audio_genres_map id相同的那首歌,所有创建了触发器
create trigger if not existes (触发器的名称) Delete/update/create(什么时候触发) ON 表名
begin:
你要执行的语句
end:
old是当delete和update的时候用到 --->代表该表的字段
new 是create 和update的时候用到
SELECT _DELETE_FILE(old._data);
从sdcard位置上删除掉对应的文件(物理删除)
总结:学习music 的contentprovider的时候发现google的代码写的很紧凑。值的我们大家借鉴。比如上面触发器的使用。
相关文章推荐
- [置顶] 三方网络框架学习Xutils3.3.4补充view绑定和数据库操作
- 【数据库学习笔记】MySQL_03_存储过程,触发器,权限,视图,函数
- 菜鸟从零学习数据库(二)——触发器
- Androidx学习笔记(22)-- 动态创建TextView展示数据库的数据
- 数据库学习13-触发器
- 数据库学习--触发器
- Qt实用技巧:使用QTableView、QSqlTableMode与QSqlDatabase对数据库数据进行操作
- Mysql 数据库学习笔记05 触发器
- 数据库学习笔记和小练习(10)触发器
- 【Sqlit数据库官方API学习—part02】触发器(Trigger)
- 数据库学习之触发器
- Java学习笔记之数据库(触发器、事物、索引、投影和除、视图、存储过程和函数 )含各种链)___ 一直补充
- 怎样给Oracle 数据库的表加触发器: how to add trigger for Oracle Database table
- 从机房重构中学习数据库——存储过程和触发器
- 数据库学习四:触发器
- 数据库SQL语句学习--view
- 黑马程序员_学习日记50_619数据库开发及ADO.Net(临时表、表变量、视图、变量、if…else…和while、事务、存储过程、触发器)
- MySQL存储过程和触发器的实现--数据库学习笔记
- 数据库学习笔记 --- 触发器原理学习
- Oracle 数据库触发器学习笔记