Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL默认约束_Sql_Sql Server_Constraints_Default_Dateadd - Fatal编程技术网

SQL默认约束

SQL默认约束,sql,sql-server,constraints,default,dateadd,Sql,Sql Server,Constraints,Default,Dateadd,我有一个表,有两列DateReceived和dateDue。我知道如何使用以下命令使dateNow列默认显示今天的日期: 默认GETDATE() 然后,用户可以将DateReceived列修改为他们想要的任何日期 用户修改DateReceived列后;如何设置dateDue列,使其在默认情况下显示距离DateReceived x天的日期 我看了这个答案,但我需要参考另一个专栏。 当DateReceived发生更改时,DateReceived是否可以自动修改其值? 用户应该能够覆盖这两列中的默认

我有一个表,有两列DateReceived和dateDue。我知道如何使用以下命令使dateNow列默认显示今天的日期: 默认GETDATE() 然后,用户可以将DateReceived列修改为他们想要的任何日期

用户修改DateReceived列后;如何设置dateDue列,使其在默认情况下显示距离DateReceived x天的日期

我看了这个答案,但我需要参考另一个专栏。

当DateReceived发生更改时,DateReceived是否可以自动修改其值? 用户应该能够覆盖这两列中的默认值

我正在使用W3学校的sql教程,但它没有答案,我在stackoverflow上也找不到答案


谢谢

听起来你要找的是一个触发器,它会一直等到更新完成,然后dateDue会自动更新

这个答案可能会为您指明正确的方向:

因此,当你说“用户修改”时,你指的是更新

默认值仅与INSERT语句相关

这是真的,你可以通过触发器完成任何你想要的自动更新更改,但作为一个初学者,我会直接建议你远离触发器。它们很少得到正确的实施,并且在出现问题时更难理解


您要做的是插入您的行(允许任何默认值“发生”),然后使用您想要的值更新您的行。

谢谢,该链接很有用。