在搞数据库时,发现有这样的一个字段,类型是NUMBER(38),查看了一下里面的数据,都是这样的, 1323957678114132132699429513221293068041322129716220 猜到应该是1970年1月1号0点0分距现在的毫秒值. 解决办法是写一个转换函数: create or replace function num_to_date(in_number NUMBER) return date isbegin return(TO_DATE('19700101','
遇到用数字记录日期时,进行查询转换. create or replace function num_to_date(s in number) return dateisbegin return to_date('1970-01-01 08:00:00','YYYY-MM-DD HH24:MI:SS')+(s/86400);end;/ select num_to_date(xxxxx) from dual;
首先先来了解一下Date数据类型: . Date类型通常要和另一个 java.text.SimpleDateFormat类联合使用. 把long-->Date: public Date(long date); Date类的构造函数可以直接将long数据类型转为Date类型 把Date-->long: public long getTime();Date类的一个方法,可以得到对应的long型.这种转换最大的使用环境就是在java.sql中的以上三个子类. 如果获取当前时间的long类型,可以直
需要指出的是,C#中有datetime类型,但是这个类型是包括小时,分钟,秒的.这个格式与数据库中的Date类型不符,如果将now设为datetime类型插入数据会失败. 需要通过TO_DATE('字段','YYYY-MM-DD'))转换.如下: string.Format("insert into tablename (TIME) values(TO_DATE('{0}','YYYY-MM-DD'))",now) 错误写法: string.Format("insert in