oracle日期存储
❶ oracle数据库date类型存储为2014-04-01下午 02:21:16格式
你在oracle数据库中定义char类型的字段,在程序中使用TO_CHAR(ld_date,'yyyy') 来提取ld_date中的年份,然后save()数据库就可以了。
如果你要修改oracle数据库的参数的话:
就修改 nls_date_format 的格式为 yyyy
修改注册表中:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1
添加一个字符串的值 名称:NLS_DATE_FORMAT 值 :YYY Y(你要的日期格式)
但是这样会影响到你整个oracle的date设计,不建议你动数据库的默认参数。
❷ oracle 数据库日期格式怎么只要年月日
可通过用PL/SQL来改变日期格式。
1、登录PL/SQL。
2、登录后,点击菜单栏,工具—首选项。
3、左侧列表找到“日期/时间”。
4、可通过右侧的各种方式进行自定义的格式和自带的格式来进行修改,修改后点击“确定”按钮保存即可。
❸ oracle 存储日期精确到哪位
日期类型(DATE)精确到秒。
时间戳类型(TIMESTAMP)精确到秒的小数点后6位,不过不是受操作系统限制中的主机振荡频率限制,windows就精确不到小数后6位。
❹ Oracle存储过程的参数中带入日期条件,如条件中有'YYYY-MM-DD'
双引号? 还是两个单引号?
to_date(''2013/7/2'', ''yyyy-mm-dd'')
❺ Oracle 数据库 触发器 日期保存格式问题!
用to_char这个函数,前提是把你的atime date 字段改成varchar类型
to_char(sysdate,'YYYY-MM-DD HH:MI:SS')
insert into emp2_log values(USER,'update',to_char(sysdate,'YYYY-MM-DD HH:MI:SS'));
如果不用改,直接插入当前时间sysdate
在读出数据的时候用select col1,col2, to_chat(col3) from yourTable;
❻ 在oracle数据库中存入时间的最简介的方法
insert into 表名 (DATE型字段名) values(to_date('2013-01-31 06:59:44','yyyy-mm-dd hh24:mi:ss')) ;
❼ oracle 中日期的类型都有哪些
有以下几种:
1.
DATE,包含
世纪、年、月、日、时、分、秒。占用7个字节,上面每个部分1个字节。
2.
TIMESTAMP
日期时间
可以包含到小数秒。
3.
TIMESTAMP WITH TIME ZONE 包含时区信息。
4.
TIMESTAMP WITH LOCAL
TIME ZONE包含时区信息,自动调整。
拓展回答:
Oracle
Database,又名Oracle
RDBMS,或简称Oracle。
是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的
适应高吞吐量的数据库解决方案。
它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。
总之,逻辑结构由逻辑存储结构(表空间,段,范围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和数据库链等)组成,而其中的模式对象(逻辑数据结构)和关系形成了数据库的关系设计。
❽ oracle能单独存一个不带时间的日期么
可以,存储的时候,不把时间写上去就可以了。
❾ oracle能单独存一个不带时间的日期么或者是不带日期的时间
不行,oracle没有不带时间的日期,oracle日期时间类型有date和timestamp,都带日期和时间,文档中说:
DATE
Valid date range from January 1, 4712 BC, to December 31, 9999 AD. The default format is determined explicitly by the NLS_DATE_FORMATparameter or implicitly by the NLS_TERRITORY parameter. The size is fixed at 7 bytes. This datatype contains the datetime fields YEAR, MONTH, DAY,HOUR, MINUTE, and SECOND. It does not have fractional seconds or a time zone.
TIMESTAMP [(fractional_seconds_precision)]
❿ Oracle基本数据类型存储格式浅析—日期类型(3)
对于公元前的日期 Oracle从 开始保存 公元前的年的保存的值和对应的公元后的年的值相加的和是 如上例中的公元 年和公元前 年的值相加 + = + =
SQL中DATE类型最后还包括一个 似乎目前没有使用
SQL> CREATE TABLE TEST_TIMESTAMP(TIME TIMESTAMP( ) TIME TIMESTAMP( ) WITH LOCAL TIME ZONE TIME TIMESTAMP( ) WITH TIME ZONE);
表已创建
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
SQL> SELECT * FROM TEST_TIMESTAMP;
TIME TIME TIME 月 下午 月 下午 月 下午 + :
SQL> SELECT DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) FROM TEST_TIMESTAMP;
DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) Typ= Len= : b b fc c Typ= Len= : b b fc c Typ= Len= : b b fc c c c
可以发现 如果客户端和数据库中的时区是一致的 那么TIMESTAMP和TIMESTAMP WITH LOCAL TIME ZONE存储的数据是完全一样的
TIMESTAMP WITH TIME ZONE则略有不同 它保存的是 时区的时间 和所处的时区信息
修改客户端主机的时区 由东 区(+ 区)改为 时区
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
修改客户端主机的时区 改为西 区( 时区)
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
修改客户端主机的时区 改为西 区( 时区)
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
修改客户端主机的时区 改为东 区(+ 时区)
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
修改客户端主机的时区 改为西 区( 时区)
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
修改客户端主机的时区 改为东 区(+ 时区)
SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);
已创建 行
SQL> MIT;
提交完成
修改客户端主机的时区 改回东 区(+ 时区)
SQL> SELECT * FROM TEST_TIMESTAMP;
TIME TIME TIME 月 下午 月 下午 月 下午 + :
月 下午 月 下午 月 下午 + :
月 上午 月 下午 月 上午 :
月 上午 月 下午 月 上午 :
月 上午 月 下午 月 上午 + :
月 下午 月 上午 月 下午 :
月 上午 月 上午 月 上午 + :
已选择 行
SQL> SELECT DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) FROM TEST_TIMESTAMP;
DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) Typ= Len= : b b fc c Typ= Len= : b b fc c Typ= Len= : b b fc c c c
Typ= Len= : b c c c e Typ= Len= : b c c c e Typ= Len= : b c c c e c
Typ= Len= : b b f a d c c Typ= Len= : b f a d c c Typ= Len= : b f a d c c f c
Typ= Len= : b b a f Typ= Len= : b b a f Typ= Len= : b b a f c
Typ= Len= : c f d Typ= Len= : b f d Typ= Len= : b f d c
Typ= Len= : b f cb bb c Typ= Len= : c e cb bb c Typ= Len= : b e cb bb c e
Typ= Len= : c b b Typ= Len= : c f b b Typ= Len= : b f b b d a
SQL> SELECT TO_NUMBER( C XXX ) TO_NUMBER( C XXX ) FROM DUAL;
TO_NUMBER( C XXX ) TO_NUMBER( C XXX )
SQL> SELECT TO_NUMBER( XXX ) TO_NUMBER( C XXX ) TO_NUMBER( C XXXXXXX ) FROM DUAL;
TO_NUMBER( XXX ) TO_NUMBER( C XXX )
SQL> SELECT TO_NUMBER( C XXX ) TO_NUMBER( E XXX ) TO_NUMBER( A XXX ) FROM DUAL;
TO_NUMBER( C XXX ) TO_NUMBER( E XXX ) TO_NUMBER( A XXX )
可以看出 修改时区会导致系统TIMESTAMP时间发生变化 但是对于TIMESTAMP WITH LOCAL TIME ZONE类型 总是将系统的时间转化到数据库服务器上时区的时间进行存储
TIMESTAMP WITH TIME ZONE保存的是当前时间转化到 时区的对应的时间 并通过最后两位来保存时区信息
第一位表示时区的小时部分 时区用 x 表示 东n区在这个基础上加n 西n区在这个基础上减n 我们所处的东 区表示为 x C 西 区表示为 xF
lishixin/Article/program/Oracle/201311/18690