【问题标题】:Issue with to_char in sqlplussqlplus 中的 to_char 问题
【发布时间】:2011-08-02 18:05:28
【问题描述】:

当我尝试使用如下查询时,它不会给我任何输出。它的 oracle 8i 客户端连接到 10g 数据库。

SQL> SELECT (to_char(sysdate,'MM/DD/YYYY HH24:MI:SS')) from dual;

(TO_CHAR(SYSDATE,'M
-------------------


SQL>

此外,没有 to_char 函数的查询也可以正常工作。 当我在另一个连接到 10g 的 8i 客户端中使用相同的命令时,它工作正常。 我比较了 SQL 会话设置,它们看起来一样。

我们非常感谢您对此的任何意见。

【问题讨论】:

  • 你能帮我验证一下吗? 10g db 是从两个不同的 8i 客户端访问的相同数据库吗?此外,客户端没有迁移到 10g 的任何特殊原因? (可能是兼容性,但始终是一个好问题。)最后,当您从 DUAL 中选择 COUNT(1) 时,您会得到什么? (正确答案是“1”)
  • 出于好奇——试试SELECT dump(to_char(SYSDATE,'MM/DD/YYYY HH24:MI:SS')) FROM dual; 它会返回NULL 还是别的什么?

标签: sql oracle


【解决方案1】:

检查客户端可执行文件的日期和 crc 校验和。我怀疑一个是带有错误的旧版本。您没有提供不同客户端的底层平台,因此它可能是(例如)Windows 中存在/存在但不存在 *nix 的错误

您是否在客户端上使用了“奇数”字符集。可能存在一些不需要的字符集转换。

您为什么使用 8i 客户端?

升级到新客户端(例如Database Express Edition client)可能是合适的。

如果您尝试选择直接的 VARCHAR2 变量(例如 SELECT DUMMY FROM DUAL)会得到什么

PS。社区 wiki,因此任何人都可以添加建议和编码 sn-ps

【讨论】:

    【解决方案2】:

    试试

    SELECT to_char(sysdate,'MM/DD/YYYY HH24:MI:SS') as formmated_date from dual;
    

    【讨论】:

    • 谢谢,但仍然没有运气:" 它显示相同的东西 SQL> SELECT to_char(sysdate,'MM/DD/YYYY HH24:MI:SS') as formatted_date from dual; FORMMATED_DATE ---- --------------- SQL>
    • 如果你只运行 select to_char(sysdate, 'MM') as current_month from dual; 会发生什么? ?
    • 当我使用 to_char 时,它只会给我空白输出,如下所示 SQL> select to_char(sysdate, 'MM') as current_month from dual;但是当我从双重选择系统日期时。它给了我输出:我相信它的问题与 t-_char 或此客户端的某些格式有关,但不确定要检查什么。谢谢 CU -- SQL> select to_char(sysdate) as current_month from dual; CURRENT_MONTH ------------------- SQL> select sysdate from dual; SYSDATE --------- 02-AUG-11 SQL>
    • 抱歉所有问题,如果您选择 to_date('19960725','YYYYMMDD') as random_date from dual; 会得到什么? select to_char(to_date('19960725','YYYYMMDD')'MM/DD/YYYY HH24:MI:SS') as formatted_date from dual 怎么样;
    • 没关系.. 下面是输出 SQL> select to_date('19960725','YYYYMMDD') as random_date from dual; RANDOM_DA --------- 25-JUL-96 SQL> SQL> select to_char(to_date('19960725','YYYYMMDD'),'MM/DD/YYYY HH24:MI:SS') as formatted_date from dual ; FORMMATED_DATE ------------------- SQL>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    • 2013-04-30
    相关资源
    最近更新 更多