PL/SQL oracle,使用日期和时间的测试窗口
我有一个返回日期的函数(实际的时间戳,日期+时间)。 在表格中,它看起来像这样,“2010-09-05 17:33:00”。 当我从sql脚本调用函数时PL/SQL oracle,使用日期和时间的测试窗口,oracle,debugging,plsql,Oracle,Debugging,Plsql,我有一个返回日期的函数(实际的时间戳,日期+时间)。 在表格中,它看起来像这样,“2010-09-05 17:33:00”。 当我从sql脚本调用函数时 select my_package.my_function('2010-09-05') from dual. 我会在结果中得到时间 但是如果我在测试窗口中运行相同的程序,我只会收到日期,而不会收到时间 这怎么可能呢?您看到了NLS\u日期\u格式设置的效果。根据需要设置。例如: alter session set NLS_DATE_FO
select my_package.my_function('2010-09-05')
from dual.
我会在结果中得到时间
但是如果我在测试窗口中运行相同的程序,我只会收到日期,而不会收到时间
这怎么可能呢?您看到了NLS\u日期\u格式设置的效果。根据需要设置。例如:
alter session set NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";
select my_package.my_function('2010-09-05') from dual;
正确查看输出
或对输出进行字符化
select to_char(my_package.my_function('2010-09-05'), 'yyyy-mm-dd hh24:mi:ss') from dual;
您将看到NLS_日期_格式设置的效果。根据需要设置。例如:
alter session set NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss";
select my_package.my_function('2010-09-05') from dual;
正确查看输出
或对输出进行字符化
select to_char(my_package.my_function('2010-09-05'), 'yyyy-mm-dd hh24:mi:ss') from dual;
你说的测试窗口是什么意思 如果您的意思是SQL+,那么将应用一种格式,您可以使用
alter session set nls_date_format='DD/MM/YYYY HH24:MI:SS';
在SQL+会话开始时执行此操作。测试窗口是什么意思 如果您的意思是SQL+,那么将应用一种格式,您可以使用
alter session set nls_date_format='DD/MM/YYYY HH24:MI:SS';
在SQL+会话开始时执行此操作。当我简单地编写ALTER时。。。。然后我得到了错误的工作过程。然而,我在下面添加了脚本,它对我有效
execute immediate 'ALTER SESSION SET NLS_DATE_FORMAT = ''DD/MM/YYYY HH24:MI:SS''';
当我简单地写改变。。。。然后我得到了错误的工作过程。然而,我在下面添加了脚本,它对我有效
execute immediate 'ALTER SESSION SET NLS_DATE_FORMAT = ''DD/MM/YYYY HH24:MI:SS''';
可能只是工具格式化日期的方式。尝试使用显式日期格式显示字符。可能就是工具设置日期格式的方式。尝试使用显式的日期格式保存字符。