当前位置: 代码迷 >> Oracle管理 >> sql创建视图时某个字段如何插入当前时间
  详细解决方案

sql创建视图时某个字段如何插入当前时间

热度:175   发布时间:2016-04-24 04:11:34.0
sql创建视图时某个字段怎么插入当前时间
我用的sql为:
CREATE OR REPLACE FORCE VIEW "omp_eachargelog_view" ("streamnumber", 
"rec_type", "timestamp", "ecid", "serviceid", "productid", "servicetype", 
"orderid", "chargemode", "resourceid", "begintime", "endtime", 
"sessionduration", "amount", "involumn", "outvolumn", "reserved") AS 
  SELECT X0.streamnumber,
    '20',
    date_format(now(), '%y%m%d%H%i%s') ,
    X0.custcode,
    '',
    X0.productid ,
    '',
    X0.bossorderid ,
    '01',
    '',
    '',
    '',
    '',
    X0.eapfeequantity ,
    '',
    '',
    ''
  FROM OMP_DEFAULT_CHARGELOG X0
  WHERE X0.EAPCHARGETYPE IS NOT NULL
  ORDER BY X0.STREAMNUMBER;

会报错Warning: View created with compilation errors.

我把 date_format(now(), '%y%m%d%H%i%s') ,这一行改成'20141015113623'就可以成功创建,菜鸟求指导!
------解决思路----------------------
date_format(now(), '%y%m%d%H%i%s')
改为sysdate试下
------解决思路----------------------

    date_format(now(), '%y%m%d%H%i%s') ,
好像在 mysql 有这样的写法。

oracle 中参考 1# 中用的 sysdate


------解决思路----------------------
date_format(now(), '%y%m%d%H%i%s')
修改为:
to_char(sysdate,'yyyymmddhh24miss') as xh
------解决思路----------------------
date_format不是Oracle中的写法,用to_char(sysdate,'yyyymmddhh24miss') ,
格式化日期的话可以用to_date函数
------解决思路----------------------
TO_DATE和to_char函数都能实现,看你那个时间字段的类型决定。
to_char可以好好研究下,这个在金额的进度上控制是非常好的
  相关解决方案