android sqlite 触发器

本文介绍了一个利用SQLite触发器实现的Android班级管理系统,通过创建班级表和学生表,并实现插入、更新和删除触发器来确保数据一致性。

android-80-android sqlite 触发器

(2012-07-26 14:34:36)
--创建班级表
create table class
(
    idinteger primary key autoincrement,--班级编号   
    classNamenvarchar(50) --班级名称
);

--创建学生表
create table student
(
    idinteger primary key autoincrement,--编号   
    stuNamenvarchar(20),    --学生名称
    stuSexbit,    --性别
    stuAgeinteger,     --年龄
    classId   --班级编号
);

--创建插入触发器 (创建学生时要触发插入触发器去判断是否存在该班级,存在插入成功,反之插入失败)
create trigger fk_Insert
before insert on student
for each row 
begin
    selectraise(rollback,'还没有该班级') 
    where(select id from class where id = new.classId ) isnull;    
end;

--创建更新触发器 (更新学生时要触发更新触发器去判断是否存在更新班级,存在更新成功,反之更新失败)
create trigger fk_Update
before update on student
for each row 
begin
    selectraise(rollback,'还没有该班级')
    where(select id from class where id = new.classId)isnull; 
end;

--创建删除触发器 (删除班级时,首先根据班级编号删除该班级学生)
create trigger fk_Delete
before delete on class
for each row
begin
     deletefrom student where classId = old.classId;
end ;


insert into class(className) values('s1t64');

insert intostudent(stuName,stuSex,stuAge,classId)values('zhangsan',1,23,1);

update student set stuName='lishi',classId=1 where id =1;

select * from class ;
select * from student limit 0,100 ; --分页查询从索引0开始查找,100条数据


附带上一本讲解的pdf哈 ,也是在网上找得,很简洁,但是可以让你少走弯路啦
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值