作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要对字段提出条件要求。我不确定这在 SQL 中的外观。我将 Management Studio 与 SQL Server 2008 一起使用。本质上,我希望仅当另一个字段输入数据时才需要一个字段。我研究了触发器,我认为这就是我需要的,但我不确定是什么类型( DDL
、 DML
等)。
例如:
当用户输入时间时,他们还必须输入日期,但如果没有输入时间,则不需要日期。 SQL 将发送一个错误,并且不允许用户在填写时间字段时在不输入日期的情况下完成记录。
谢谢!
最佳答案
您可以使用检查约束。
create table YourTable
(
ID int identity primary key,
DateCol date,
TimeCol time,
constraint ch_DateTime check(
DateCol is not null or
TimeCol is null
)
)
-- null in both columns
insert into YourTable default values
-- values in both columns
insert into YourTable(DateCol, TimeCol) values(getdate(), getdate())
-- value only in DateCol
insert into YourTable(DateCol) values(getdate())
-- value only in TimeCol failes
insert into YourTable(TimeCol) values(GetDate())
关于sql-server-2008 - 在 SQL Server 2008 中设置条件必填字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11893862/
在使用网站、加载内容等一段时间后,此消息显示“Fill:SelectCommand.Connection 属性尚未初始化”!我认为这是因为 sql 连接,但不确定......我想知道我能做些什么来防止
我是一名优秀的程序员,十分优秀!