기금넷 공식사이트 - 금 선물 - SQL 트리거 프로그래밍

SQL 트리거 프로그래밍

1. 차입 테이블에 트리거 ins _ Borrow _ tr 을 생성합니다. 대출 양식에 레코드를 삽입할 때 대출 날짜는 비워 둘 수 없으며 반환 날짜는 비어 있어야 합니다. 위 조건이 충족되지 않으면 "대여" 테이블에 레코드를 삽입할 수 없습니다. 상술한 조건이 충족되면 삽입을 허용하고 동시에 도서의 만기일을 얻을 수 있다면, "도서" 표의 해당 도서 수는 1 을 줄여야 하며, 이는 독자의 대출 행위에 해당한다. -"대출 날짜" 는 비워 둘 수 없습니다. 트리거 없이 IS NOT NULL 을 통해 설정할 수 있습니다. -반환 날짜는 비어 있어야 하며, 기본값을 설정하여 수행할 수 있습니다. 즉, 어떤 값을 입력하든 결국 지워집니다. -"대출 날짜" 는 "대출 날짜" 로 계산되며, "도서" 테이블의 도서 수는 1: 두 가지 기능을 하나의 트리거로 줄여야 합니다. 트리거 생성 ins _ 차변 _tr

대출

삽입에 사용

마찬가지로

시작

차입 세트 만기 일자 갱신 = 차입 일자 +n 차입 일자에서 차입 위치를 삽입합니다. B _ id, = 삽입됨. B _ id 는 다른 것과 유사합니다.

시작 2. 차입 테이블에 트리거 del _ Borrow _ tr 을 생성합니다. 대여 테이블에서 레코드를 삭제할 때 반환 날짜가 비어 있으면 레코드를 삭제할 수 없습니다. -이 작업은 트리거를 통해 수행할 수 있습니다. 3. 차변 테이블에 트리거 update_return_tr 을 생성합니다. 대여 테이블의 레코드를 업데이트하는 경우 반환 날짜 필드만 업데이트할 수 있으며 다른 필드는 업데이트할 수 없습니다. 기한이 지났는지 여부를 계산하고 처벌 정보 (하루 연체된 0. 1 위안) 를 주세요. 업데이트되면' 도서' 표의 도서 수가 1 을 늘려야 한다. 이 작업은 독자의 책 반납 행위에 해당한다. -반환 날짜 필드만 업데이트할 수 있습니다. 다른 필드는 업데이트할 수 없습니다. 프로그램을 쓸 수 있다면 문제가 생길 수 있기 때문에 이 방법은 잘 구현되지 않습니다. 프로그램에서 수정하는 것이 좋습니다. 다른 필드는 읽기 전용입니다. -다른 부분은 트리거에 의해 구현됩니다.