在项目中写了两个表的触发器分别是cd表。

   触发本触发器的条件是:插入的语句的projectid(企业编号)>0并且cdxm(长贷项目)=‘借款金额’时,同时在本表中插入一条projectid和marketid、cdje(长贷金额)相同,marketyear=插入的marketyear(发生年份)+插入的zq(账期),长贷项目为‘应还金额’的数据记录。

写法如下:修改本错误主要看cd表。

if (select projectid from inserted )>0
begin
if(select cdxm from inserted)='借款金额'
begin
insert into cd 
 
select projectid,marketid,convert(int,marketyear)+convert(int,zq),
 
'应还金额',cdje,0 from inserted 
end

end

 

      根据sql跟踪,错误提示为第一行和第三行,应修改为:

Code
使用exists关键字,判断是否包含结果集,这样就防止了第一行返回多条记录,同时将cdxm放入到内部限制,而不是用if,返回多结果集了。
问题是解决了,令我奇怪的是,我还有一个表,写法如一个段代码,内容基本类型,就不报错,很奇怪呀!sql也有表里不一的情况呀!
posted on 2009-02-23 17:49  叶子文文  阅读(30079)  评论(1编辑  收藏  举报