代码之家  ›  专栏  ›  技术社区  ›  Joe R.

How can I obtain time of day without DATETIME, CURRENT or TIME?

  •  1
  • Joe R.  · 技术社区  · 14 年前

    INFORMIX-SQL 2.10.06E (DOS 6.22):

    这是在纯DOS下运行的ISQL的旧版本之一,但不支持datetime或current!然而,ace报告编写器具有“time”关键字常量,该常量以军用格式“hh:mm:ss”从系统时钟返回一天中的时间。我不明白为什么RDS(在那时候,大约是1988年)发布了一个产品,它提供了今天,但没有时间常数或数据类型,但只提供在ace中,也没有RDS放弃Y2K问题等。有人能想到一个技巧,例如:从今天的内部表示提取时间,或在其他地方嵌入到引擎中?…从审计表?…明确的解决方案是升级到ISQL7.50或至少7.x。我的一些用户有,但其他人很顽固。我可以创建一个cfunc来为我提供系统时间,但我甚至找不到这个传统DOS版本的自定义运行程序cperf、cace或esql/c 2.10。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Jonathan Leffler    14 年前

    The problem was fixed in 1988 or 1989, Frank, and AFAICR it was fixed before some other DBMS of the same era had a time types.

    基本上,在您使用的版本中,处理这个问题的唯一方法是通过您没有的ESQL/C。我不知道有什么秘密,技巧或解决办法。

    It is time to put that version of the code to rest.

    不愿离开它的客户给你带来的痛苦多于收益。