从日期<到日期

时间:2018-06-25 12:29:31

标签: sql sql-server stored-procedures

declare @Education table (
ID                             int,
[From]                         date,
[To]                           date,
TitleOfQualification           nvarchar(100),
OrganisationProvidingEducation nvarchar(100),
City_ID                        int,
Country_ID                     int,
actionType                     nvarchar(20));

这是我正在使用的表格,我想使“开始日期”始终在“结束日期”之前..例如:当我输入“开始日期”的值时,它应始终小于“结束日期”日期”(从日期<到日期)。有人可以帮我吗?

2 个答案:

答案 0 :(得分:1)

您可以使用check约束:

declare @Education table (
    ID                             int,
    FromDate                       date,
    ToDate                         date,
    TitleOfQualification           nvarchar(100),
    OrganisationProvidingEducation nvarchar(100),
    City_ID                        int,
    Country_ID                     int,
    actionType                     nvarchar(20),
    check (FromDate < ToDate)
);

请勿使用fromto作为列名。这些是保留字,是SQL语法的组成部分。

答案 1 :(得分:0)

您将要添加一个这样的约束:

ALTER TABLE education 
ADD CONSTRAINT CHECK_DATES CHECK ([from] < [to]);