可以利用自定义函数实现check约束:--创建辅助视图 create view v as select getdate() as 'dt' go--创建自定义函数 create function f_check() returns int as begin declare @dt datetime select @dt=dt from v if datepart(hour,@dt)<20 --在这里实现日期的检测 return 0 return 1 end go --创建表 create table tb ( ldatetime datetime check(dbo.f_check()>0), .......... )
可用作业来定时赋予或解除权限,很简单
create view v
as
select getdate() as 'dt'
go--创建自定义函数
create function f_check()
returns int
as
begin
declare @dt datetime
select @dt=dt from v if datepart(hour,@dt)<20 --在这里实现日期的检测
return 0 return 1
end
go
--创建表
create table tb
(
ldatetime datetime check(dbo.f_check()>0),
..........
)