0

我有一个名为 Settings 的表,其中包含 columnA、columnB、columnC、columnD、columnE 及其值,如下所示:

列A = 1000 列B = 100 列C = 200 列D = 18 列E = 6

当时间在晚上 18 点到早上 6 点之间时,我想更改列 A/B/C 中的值。

我正在考虑某种通过查看时间戳来更新值的触发器,但我只是不知道该怎么做。有任何想法吗?

4

1 回答 1

0

如果您可以控制读取表格的应用程序,那么您是否可以创建一个视图来检查时间并返回您需要的值?

就像是:

SELECT 
  [COLUMN1],
  CASE 
    WHEN DATEPART("hh", GETDATE()) BETWEEN 6 AND 14 THEN 1
    ELSE [COLUMN2] END AS [COLUMN2],
  [COLUMN3]
FROM [TABLE1]

编辑:

如果您通过应用程序中构建的 SQL 查询表,您可以更改 SQL 查询以使用CASE上述内容返回这些值:

CASE 
    WHEN DATEPART("hh", GETDATE()) BETWEEN 6 AND 14 THEN 1
    ELSE [COLUMN2] END AS [COLUMN2],
于 2012-05-29T12:51:57.303 回答