分享

对oracle中date/timestamp的操作

 _明心见性_ 2019-01-09

设置oracle中date的会话格式为 'yyyy-mm-dd hh24:mi:ss'

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

 

设置oracle中timestamp的会话格式为 ‘yyyy-mm-dd hh24.mi.ss.ff’

alter session set nls_timestamp_format='yyyy-mm-dd hh24.mi.ss.ff';

 

c#中向oracle中插入date 可以直接操作日期数据:

SELECT * FROM T_TABLE WHERE createDate Between '2015-09-15' AND '2015-09-25'

 

c#中向oracle中操作timestamp 必须间接的转timestamp 进行操作:

SELECT * FROM T_TABLE WHERE createDate Between TO_TIMESTAMP('2015-09-15','yyyy-mm-dd hh24:mi:ss') AND TO_TIMESTAMP('2015-09-25','yyyy-mm-dd hh24:mi:ss') 

/或者:

SELECT * FROM T_TABLE WHERE createDate Between TO_TIMESTAMP_TZ('2013-12-09','YYYY-MM-DD HH24:MI:SS.FF TZH:TZM') AND TO_TIMESTAMP_TZ('2015-12-09','YYYY-MM-DD HH24:MI:SS.FF TZH:TZM') 

 

注意:

在C#中,如果sql是用StringBuilder进行拼接的,对于timestamp类型日期 必须进行 to_timestamp('','')转换。

     如果sql是用OracleParameter参数进行执行的,即使对于timestamp类型日期 也不能进行 to_timestamp转换,只能传递DateTime类型,可能参数内部替换字符串时 自动进行了转换。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多