初级问题¥¥高手请告诉我如何才能显示时分秒呢?以及to_date的两个问题。谢谢!

xinxing 2003-08-16 10:15:43
SQL> select sysdate from dual;
SYSDATE
----------
16-8月 -03
请问如何才能显示时分秒呢?

另外我看书上写的对date类型数据的插入可以用
TO_DATE('2-DEC-2001',DD-MON-YYYY')),我这样作怎么都不行,出错,提示月的数据错误,只能用TO_DATE('20010202','YYMMDD'),也就是年月日的顺序好像Oracle已经限制定了,不知是否这样?

还有就是插入中文的时间"2003年8月18日"应该如何用TO_DATE呢?
...全文
205 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
gladness 2003-08-17
  • 打赏
  • 举报
回复
前面的问题,tsuleon兄是对的。
后一个问题这样写to_date('2003年8月18日','yyyy"年"mm"月"dd"日"')
把年月日分别用双引号括起来就行了
xinxing 2003-08-17
  • 打赏
  • 举报
回复
我又试了一下,还是不行,可能是英文字母不能接受吧?
我换成to_date('11032002', 'DDMMYYYY')就OK了。不知道为什么?
哪位高手能解答这个问题吗?
gladness 2003-08-17
  • 打赏
  • 举报
回复
insert into zxz.company_events (列1,列2)
values(......);
指定一下具体的列名吧,从提示看,表的第二列是数字型的,不是日期型的
xinxing 2003-08-17
  • 打赏
  • 举报
回复
shuipipi(水皮皮) :
SQL>insert into zxz.company_events
values('输入书上的时间格式',to_date('07-DEC-2001', 'DDMMYYYY'))
*
ERROR 位于第 2 行:
ORA-01858: 在要求输入数字处找到非数字字符
有错误呀,为什么呢?请帮忙再看一下!
shuipipi 2003-08-17
  • 打赏
  • 举报
回复
1、ALTER SESSION SET NLS_DATE_FORMAT="YYYYMMDD HH:MI:SS";
SELECT SYSDATE FROM DUAL;

2、insert into t(c_date) values(to_date('2-DEC-2001', 'DDMMYYYY');
RomanticProgrammer 2003-08-17
  • 打赏
  • 举报
回复
gz
benxie 2003-08-17
  • 打赏
  • 举报
回复
gzgin
gladness 2003-08-17
  • 打赏
  • 举报
回复
to_date('07-DEC-2001', 'DDMMYYYY')
这样肯是不行的,两个格式不匹配。 TsuLeon() 写的加nls参数的是对的。因为nls参数的不同,格式中的MON对应的有可能是中文的5月、6月等,而不是英文的月
xinxing 2003-08-17
  • 打赏
  • 举报
回复
ding
TsuLeon 2003-08-16
  • 打赏
  • 举报
回复
select to_char(sysdate, 'yyyy-mm-dd hh-mi-ss') from dual;

insert into t(c_date) values(to_date('2-DEC-2001', 'DD-MON-YYYY', 'NLS_DATE_LANGUAGE = American'))

最后一个好像不行,可以插入类型为varchar2的字段

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧