복붙노트

[SQL] SQL 제약 조건 : 날짜 A는 날짜 B 전입니다 - 어떻게?

SQL

SQL 제약 조건 : 날짜 A는 날짜 B 전입니다 - 어떻게?

나는 = 날짜로부터 = 날짜 필드를해야하는 SQL 테이블을 만드는거야하지만 난에서 이전 될 수 없습니다 할 수 있도록 제약을하고 싶습니다. 내 프로그램은 확인합니다하지만 SQL 그것을 적용하는 방법을 배우고 싶습니다. 나는 전에 SQL을 작성하지만, 정말 제약을 사용한 적이 그들이 작동 방법을 몰라했습니다.

그래서 질문은 표준 SQL을 사용하여, 어떻게에서가 전에 있는지 확인합니까?

해결법

  1. ==============================

    1.

    create table foo
    (
       from_date date,
       to_date date,
       constraint check_dates check (from_date < to_date)
    );
    

    기존 테이블에이 사항을 적용해야하는 경우 또는 사용

    alter table foo
       add constraint check_dates check (from_date < to_date);
    

    PostgreSQL의 설명서는 점검 제한 조건에 대한 좋은 장을 포함 http://www.postgresql.org/docs/current/static/ddl-constraints.html#AEN2410

  2. ==============================

    2.나는이 SQL 서버, MySQL과 오라클에 대한 확인을 생각

    나는이 SQL 서버, MySQL과 오라클에 대한 확인을 생각

    ALTER TABLE myTbl
    ADD CONSTRAINT chk_Dates CHECK (dtFrom < dtTo)
    
  3. from https://stackoverflow.com/questions/13732269/sql-constraint-date-a-is-before-date-b-how by cc-by-sa and MIT license