2014-01-23 51 views
-2
CREATE TRIGGER noOfBooks 
AFTER INSERT ON BooKLoan 
FOR EACH ROW 
BEGIN 
    UPDATE Book SET noOfLoan=noOfLoans + 1 
    WHERE Bookloan.bookTitle= :new.bookTitle; 
END; 
/

(加一来在桌上的书书名的noOfLoans列,每次经过那本书的标题是进入了一个新的贷款行表BookLoan)不能让我的触发工作

任何人都可以请帮我解决问题吗?

+0

不明白,请澄清。 – OldProgrammer

+0

你有一个触发器。你不能使它工作。你如何努力使其工作?之后会发生什么? –

+0

什么是错误?你想做什么,你有什么结果? –

回答

1

这里使一些野生假设您想要每一个相关的BookLoan记录插入时间递增Book.noOfLoans,至少有2个问题在您的代码:

UPDATE Book 
    SET noOfLoan=noOfLoan + 1 
    WHERE Book.bookTitle = :new.bookTitle; 
  1. noOfLoan或noOfLoans但不能同时

  2. 由于触发器在Bookloan上,而您似乎要更新Book,因此您需要过滤Book.bookTitle而不是Bookloan(因为new伪行已经是Bookloan行)