racle数据库插入日期型数据,应该怎么下手呢?下面我为大家整理了关于Oracle数据库插入日期型数据的方法,希望能为你提供帮助:
往Oracle数据库中插入日期型数据(to_date的用法)
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-20 18:31:34' , 'YYYY-MM-DD HH24:MI:SS' ) )
查询显示:2007-12-20 18:31:34.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-14 14:10' , 'YYYY-MM-DD HH24:MI' ) )
查询显示:2007-12-14 14:10:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-12-14 14' , 'YYYY-MM-DD HH24' ) )
查询显示:2007-12-14 14:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-11-15' , 'YYYY-MM-DD' ) )
查询显示:2007-11-15 00:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007-09' , 'YYYY-MM' ) )
查询显示:2007-09-01 00:00:00.0
-------------------
INSERT INTO FLOOR VALUES ( to_date ( '2007' , 'YYYY' ) )
查询显示:2007-05-01 00:00:00.0
-------------------
当省略HH、MI和SS对应的.输入参数时,Oracle使用0作为DEFAULT值。
如果输入的日期数据忽略时间部分,Oracle会将时、分、秒部分都置为0,也就是说会取整到日。
同样,忽略了DD参数,Oracle会采用1作为日的默认值,也就是说会取整到月。
但是,不要被这种“惯性”所迷惑,如果忽略MM参数,Oracle并不会取整到年,而是取整到当前月。
查询各个级别nls_date_format
设置nls_date_format
2)其次,设定nls_date_format的值
①session级别设定值:
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss'
设定之后再查询会发现nls_session_parameters视图中nls_date_format的值已经变了,而nls_instance_parameters、nls_database_parameters视图中的值没有变。
session级别——如果只是希望自己看到某种格式而不影响其他人看到的结果。
②instance级别设定值:
alter system set nls_date_format = 'yyyy-mm-dd hh24:mi:ss'
此级别的值在oracle9i以后就不允许设定了。
③database级别设定值:
oracle不允许设定此级别的参数值,也没有提供设定语句。
更改日期类型格式化
目的:减少客户端对时间字段(字符串,日期)格式化
在oracle数据库插入日期时格式不对,修改办法如下:
1、使用具有日期和时间格式的表来查询相关数据。
2、查询指定日期(2019/03/04)的数据。 默认值是周期与0点0分开计算。
3、如果要指定开始计算的次数,则上述句点语法将更改为OUT_PROCESS_TIME>TO_DATE('2019/03/04 10:00:00','YYYY/MM/DD HH24/MI/SS')。
4、第一步是找到定义的时间单位。
5、在数据库中找到此时间函数的定义。 这是一个参数集。 将使用数据库的相关整数转换。 它通常位于sys_base表中。
6、work_time<14*60/10,这里14表示14点,即下午2点。60是每小时60分钟设置的公共值,即上面sys_base表中的时间值。
按照上述 *** 作,便可以解决该问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)