Java 表示RDBMS中另一个日期之前或之后一定天数的日期

Java 表示RDBMS中另一个日期之前或之后一定天数的日期,java,sql,sql-server,database-design,date,Java,Sql,Sql Server,Database Design,Date,在RDBMS中,是否有一种标准方法来表示在另一个日期之前或之后一定天数的日期 例如,假设日期1是2005年10月30日,它显然可以存储在RDB中的datetime列或类似列中 但是假设日期2是“日期1后3天”,假设日期1可以在将来的任何时间更改,这意味着日期2必须以某种方式自动更新,您如何在RDB中表示它 谢谢 给出两条信息,你总能算出第三条 开始日期+偏移量=另一个日期 另一个日期-开始日期=偏移量 在本例中,您似乎有两个已知事实 开始日期 抵消 存储这些数据,并使用DATEADD将“

在RDBMS中,是否有一种标准方法来表示在另一个日期之前或之后一定天数的日期

例如,假设日期1是2005年10月30日,它显然可以存储在RDB中的datetime列或类似列中

但是假设日期2是“日期1后3天”,假设日期1可以在将来的任何时间更改,这意味着日期2必须以某种方式自动更新,您如何在RDB中表示它


谢谢

给出两条信息,你总能算出第三条

  • 开始日期+偏移量=另一个日期
  • 另一个日期-开始日期=偏移量
在本例中,您似乎有两个已知事实

  • 开始日期
  • 抵消
存储这些数据,并使用DATEADD将“另一个日期”作为计算列

CREATE TABLE whatever (
...
StartDate date NOT NULL,
DayOffset smallint NOT NULL,
AnotherDate AS DATEADD (day, DayOffset, StartDate),
...
这样,当2个输入值更改时,数据库引擎将维护另一个日期

如果这三个选项中的任何一个可以改变,那么你通常必须使用触发器