相关疑难解决方法(0)

SQL Server 2005 - 将日期时间字段约束为日期的最佳方法

然而:

以 SQL Server 2008 开头的日期字段类型

给定一个表:

CREATE TABLE dbo.MyTable
(
    Code int NOT NULL,
    DateCode datetime NOT NULL
)
CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED 
(
[Code] ASC, [DateCode] DESC
);
Run Code Online (Sandbox Code Playgroud)

约束 DateCode 只是一个日期的最佳方法是什么?

它必须允许没有时间部分的日期。

2017-01-02
2017-01-02 00:00:00.000
20170102
Run Code Online (Sandbox Code Playgroud)

现在我正在使用:

ALTER TABLE dbo.MyTable ADD CONSTRAINT [CHK_MyTable_DateCode]
    CHECK ([DateCode] = DATEADD(DAY, 0, DATEDIFF(DAY, 0, [DateCode])));
Run Code Online (Sandbox Code Playgroud)

但是,我想知道是否有最好的/简短的方法来完成它。

sql-server-2005 constraint datetime

5
推荐指数
1
解决办法
2676
查看次数

标签 统计

constraint ×1

datetime ×1

sql-server-2005 ×1