还要请教update 时间问题

juan_su_ 2008-10-21 10:40:35
update fee_note set payed=1,paydate =to_date('2000-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss') where id='1'
执行以后的结果是 01-一月 -2000 12:00:00 AM
刚才在网上查to_date的用法,都不行,汗!
请问,我是想更新系统时间to_date(date(),'yyyy-mm-dd hh24:mi:ss') 这样,行吗?待会去试
...全文
116 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
juan_su_ 2008-10-21
  • 打赏
  • 举报
回复
这样啊,SQL 都可以任意日期格式.再学习!谢谢!
codearts 2008-10-21
  • 打赏
  • 举报
回复
update fee_note set payed=1,paydate =to_date('2000-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss') where id='1'
这句本身没有错,是你查出来的时候nls_date_format设置的问题

select to_char(paydate, 'yyyy-mm-dd hh24:mi:ss')
from fee_note
where id = '1';
hebo2005 2008-10-21
  • 打赏
  • 举报
回复
oracle里date格式是固定,显示出来是根据你的客户端程序的设置
随便你怎么方式写进去,date类型的,就是7个字节,年月日时分秒毫秒
如果你想SETECT的显示结果如你所要的,就用
select
to_char(paydate,'yyyy-mm-dd hh:mi:ss am' from 表
范佩西_11 2008-10-21
  • 打赏
  • 举报
回复
date型的怎么可以更新为字符型的。date型的都是固定格式存储的,要查看显示的格式为你要求的格式得修改注册表
juan_su_ 2008-10-21
  • 打赏
  • 举报
回复
我表达错了,更新的是我硬件机器的时间,字符串,我希望执行的结果是2008-10-20 12:00:00 AM
hebo2005 2008-10-21
  • 打赏
  • 举报
回复
系统时间,直接这样
paydate=sysdate

17,378

社区成员

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

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