如何在 ISQL Perform 中格式化 DATETIME 列的显示?.. 和其他 4.10 相关问题
Posted
技术标签:
【中文标题】如何在 ISQL Perform 中格式化 DATETIME 列的显示?.. 和其他 4.10 相关问题【英文标题】:How can I format display of a DATETIME column in ISQL Perform?.. and other 4.10 related questions 【发布时间】:2010-07-12 14:47:41 【问题描述】:Informix-SE 4.10.DD6、Informix-SQL 4.10.DC1 执行屏幕:
1) 我将列定义为 DATETIME HOUR TO MINUTE,当我在 ISQL 执行屏幕中显示它时,它的默认格式是 HH:MM(24 小时制)。我想将其显示为 HH:MM (am/pm)。执行格式属性仅适用于 DATE 和 DECIMAL 数据类型。如何格式化 DATETIME 的显示?
2) 我可以在 4.10 中定义 VARCHAR、TEXT 和 BYTE 数据类型吗?我注意到 Perform 中有一个“查看”命令用于查看 BLOBS,Perform 怎么知道要显示哪个 BLOB?
3) 当我将 SE 2.10.06E 文件移植到 SE 4.10.DD6 时,我注意到“pcuser”。在每个表名上都加上了前缀,我的一些 SQL proc 不起作用并且 SYSCONST 被损坏,所以我尝试了 BCHECK 并且 BCHECK 不起作用。这些是表所有者的前缀吗?.. 所以我在 2.10 中 dbschema'ed 并卸载了我的所有表,在 4.10 中重新创建了数据库和表,加载了所有表并且能够毫无问题地访问它们,但是 BCHECK 和 SQL procs还是不行。
4) 任何人都可以与我分享 ISQL 4.10 手册吗?.. 如果您没有 4.10 (DOS) 手册,即使是 4.10U (UNIX) 手册也会有很大帮助!
【问题讨论】:
【参考方案1】:在 ISQL 7.x 中,您有机会设法以 12 小时制显示时间,但基本上,ISQL 并不真正支持它,而在 ISQL 4.10 中,您没有内置-in 选项。但是,如果您想获得创意,可以考虑在 DISPLAYONLY 字段中显示数据(实际数据在主屏幕外的字段中),然后有一个控制时间显示的指令。当然,将其格式化并非易事(但远非不可能) - 上午 12:30 是在凌晨 1:30 之前,等等 - 并且需要小心进行反向转换。
Informix SE 不支持 BYTE、TEXT 或 VARCHAR - 句点。 (与 nit-pickers 无关的细节 - SELECT "" FROM SomeWhere
返回一个 VARCHAR(1)。)
是的,'pcuser' 是所有者前缀。天哪 - 在 4.00 中引入了具有所有者的 MODE ANSI 数据库吗?我以为那是早些时候,但我可能是错的。无论如何,我确实记得 DB-Schema 输出开始在任何地方添加用户名 - 我仍然有一个 shell 脚本,它可以即时编写几个 ACE 报告以生成无所有者模式。这可以追溯到这个时代(80 年代末)。 BCHECK 应该适用于数据库中的任何 C-ISAM 文件 - 如果它不适用,那么您很可能拥有已损坏到 BCHECK 无法确定它们的头部或尾部的文件,但这是相对不寻常的。在那些日子里它可能不那么可靠 - 但我对 BCHECK 的经验一直是,如果信息是可挽救的,它就会挽救数据。
可能不会。我刚刚记得我有一些 90 年代中期的文档 CD(目前带有“法律”;他们需要一些旧文档来进行一些诉讼——我必须要回这些 CD)。对于 4.x,您可能会很幸运;我 99% 确信他们没有任何早期的手册(2.x;在 CSDK 3.x 发布之前,从来没有基于 SQL 的产品的 3.x 版本;因此又挂了一个故事,下次)。
【讨论】:
1) 好的,也许我可以将 datetime col 转换为 char col 并使用下标转换为 HH:MMam 或 HH:MMpm?..2) 所以 Per 的 4.10 的视图没用或有这是因为有一个支持 BLOB 的 DOS 的 TURBO?..3)4.10.DD6 引擎于 1992 年发布。也许 RDS 使 4.10 与 SQL-92 兼容?..我将 ISQL2.10 BCHECK.EXE 复制到 4.10 的.. \bin 并且它起作用了!..不知道为什么 4.10 bcheck 不起作用?..4) 是的!.. 4.10.D 或 .U 手册会有很大帮助!..所有这些旧版本可能会激发您的怀旧之情,但是这些版本满足我的应用需求,尤其是 cperf 和 cace。 @Frank:DOS 上的 ISQL 可以通过 I-Star 访问 Unix 上的 OnLine。我忘记了 OnLine 是否曾经可用于 DOS;我不这么认为,但我可能是错的。 DD6 版本将在 DD1 版本之后一段时间发布 - 所以 1992 年可能是正确的。 OnLine 5.0 于 1990 年 12 月发布。以上是关于如何在 ISQL Perform 中格式化 DATETIME 列的显示?.. 和其他 4.10 相关问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在 XCUITest 中使用 perform(withKeyModifier:block:) 函数执行多选