使用数据库语句 有学生表和班级信息表,创建触发器,如果有学生转系,则相应系人数也一并修改。
2个回答
展开全部
如果是软件开发,尽量少用触发器,数据库表越简单越好,后期维护容易没有限制;如果是学习研究,那你得把学生表,班级信息表,学院相关系表里的相关字段及说明贴出来才能知道怎么把本来可以做在代码里的东西换成触发器实现
追问
create table student
(Sno int primary key,
Sname varchar(20) not null,
Ssex char(4),
sBirthDate datetime,
sDepNo int foreign key references Department(sDepNo)
)
create table Department
(
sDepNo int primary key,
sDepName varchar(20) not null
sDtotal int
)
可以了吗
追答
可以,具体语句我不太确定,思路是在student表上建立一个触发器,要不要存储过程就要看情况了,select所有sDepNo,count(*)的信息,group by sDepNo,然后update on Department set new.sDtotal=那个count(*)算出的值;语法可能是错的,但是意思就是这样的。确实有点复杂的,利用存储过程的话就相当于写代码差不多的样子了,可以把select,update的语句单独作成几个存储过程来使用的。祝你能调试出正确代码,或者也有高人可以用其他数据库方面的方法做出来的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询