더북(TheBook)

한 가지 문제는 액세스는 자기 참조(한 테이블이 다시 자기 자신을 참조)를 할 때도 관련 필드를 모두 업데이트하거나 삭제할 수 있지만, SQL Server는 그렇지 않다는 점이다. 즉, 코드 2-20을 액세스에서는 허용하지만 SQL Server에서 실행하면 오류가 발생한다.

코드 2-20 자기 참조 관계에 DRI를 적용하는 테이블 생성

CREATE TABLE OrgChart (

  employeeID INTEGER NOT NULL PRIMARY KEY,

  manager_employeeID INTEGER

CONSTRAINT SelfReference FOREIGN KEY (manager_employeeID)

REFERENCES OrgChart (employeeID)

ON DELETE SET NULL

ON UPDATE CASCADE

);


 

액세스 2010 버전 이후부터 데이터 매크로를 사용할 수 있는데, SQL Server의 트리거와 유사하다. 액세스 데이터베이스의 데이터 매크로 기능을 유지해야 한다면, SQL Server에서는 트리거로 변환하는 것이 상책이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.