代码之家  ›  专栏  ›  技术社区  ›  Walentyna Juszkiewicz a_horse_with_no_name

PB Select TODAY()进入:虚拟变量

  •  0
  • Walentyna Juszkiewicz a_horse_with_no_name  · 技术社区  · 6 年前

    当我今天在PB中选择时,它返回1900/1/1

    date var
    Select TODAY() Into :var From DUMMY
    

    但是,当我赋值给variable TODAY()时,它会按预期工作

    date var
    var = today()
    

    我使用MS SQL Server 2016和PowerBuilder 12.5。

    我认为问题出在不同的日期格式上,但是我在Windows区域设置中更改了PB TODAY()返回的日期格式 MSSQL GetDate()返回 2018-10-08 18:25:23.207 所以日期部分有相同的格式。

    问题不在虚拟表中,因为我已经创建了mssql虚拟表并在其中插入了一行。

    选择今天() var=今天()

    2 回复  |  直到 6 年前
        1
  •  1
  •   Arfath    6 年前

    试试下面的SQL。

    Select getdate() into :var From DUMMY;

        2
  •  1
  •   Terry    6 年前

    还有两件事:

    1. 我不会说这可能是一个关键问题,但正如您所指出的,GetDate返回一个datetime;我建议将其作为捕获变量的数据类型。

    是的,GetDate()将是服务器的日期/时间,Today()将基于本地工作站。

    祝你好运。