Oracle中TIMESTAMP的几种类型介绍与实例_oracle

TIMESTAMP的几种类型比较

TIMESTAMP

时间戳类型,与date的区别在于,date不能精确到毫秒,而timestamp可以精确到毫秒,毫秒的位数为0-9位,默认为6位。

SQL> select tp from timestamp_test;
TP
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午

TIMESTAMP WITH TIME ZONE

TIMESTAMP WITH TIME ZONE 与 TIMESTAMP的区别在于,前者输出显示携带存入该时间值的数据库时区,后者输出不携带时区。

SQL> select tp_tz from timestamp_test;
TP_TZ
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午 +08:00

TIMESTAMP WITH LOCAL TIME ZONE与TIMESTAMP的区别在于,前者的输出受时区影响,会跟着时区的变化而变化,而后者存入数据库后将不受时区影响。即前者以数据库本地时区保存数据,输出时将转换成客户端时区输出。

SQL> select tp_l_tz from timestamp_test;
TP_L_TZ
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午

实战演练

# 创建timestamp_test测试表
SQL> create table timestamp_test(dt date,tp timestamp(6),tp_tz timestamp(6) with time zone,tp_l_tz timestamp(6) with local time zone);
Table created
# 在测试表中添加数据
SQL> insert into timestamp_test values(sysdate,sysdate,sysdate,sysdate);
1 row inserted
SQL> commit;
Commit complete
# 查看数据库的时区和当前会话的时区
SQL> select dbtimezone,sessiontimezone from dual;
DBTIMEZONE SESSIONTIMEZONE
---------- ---------------------------------------------------------------------------
+00:00   +08:00
# 查看当前时间
SQL> select sysdate from dual;
SYSDATE
-----------
2016/3/1 9:
# 查看测试表的数据
SQL> select * from timestamp_test;
DT     TP                                        TP_TZ                                      TP_L_TZ
----------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- --------------------------------------------------------------------------------
2016/3/1 9: 01-3月 -16 09.22.33.000000 上午                         01-3月 -16 09.22.33.000000 上午 +08:00                      01-3月 -16 09.22.33.000000 上午
# 修改当前会话的时区
SQL> alter session set time_zone='+10:00';
Session altered
# 查看当前会话时区修改后的测试表的数据
SQL> select dbtimezone,sessiontimezone from dual;
DBTIMEZONE SESSIONTIMEZONE
---------- ---------------------------------------------------------------------------
+00:00   +10:00
SQL> select * from timestamp_test;
DT     TP                                        TP_TZ                                      TP_L_TZ
----------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- --------------------------------------------------------------------------------
2016/3/1 9: 01-3月 -16 09.22.33.000000 上午                         01-3月 -16 09.22.33.000000 上午 +08:00                      01-3月 -16 11.22.33.000000 上午
Oracle的备份与恢复

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索oracle
, timestamp
, timestamp类型
oracle的timestamp
oracle timestamp类型、实例化timestamp、oracle timestamp、oracle to timestamp、oracle systimestamp,以便于您获取更多的相关知识。

时间: 2024-07-30 22:55:35

Oracle中TIMESTAMP的几种类型介绍与实例_oracle的相关文章

Oracle中创建全文索引支持的类型

Oracle中创建全文索引支持的类型 只能在类型:VARCHAR2, CLOB, BLOB, CHAR, BFILE, XMLType, and URIType上创建: 不能在类型:NCLOB,NVARCHAR2,NCHAR,DATE,NUMBER,TIMESTAMP上创建  

Oracle 索引扫描的五种类型

Oracle 索引扫描的五种类型 (1)索引唯一扫描(INDEX UNIQUE SCAN) LHR@orclasm > set line 9999 LHR@orclasm > select * from scott.emp t where t.empno=10;   Execution Plan ---------------------------------------------------------- Plan hash value: 2949544139   -----------

在word文档中打"√“的几种方法介绍

  有时候,我们在做电子调查报告或者填写一些资料表,会遇到一些word文档中有小方框[□],需要在里面打钩[√],说实在的,碰到的时候还真有些烦,我想很多人都有这样的感触吧,下面小编就为大家介绍在word文档中打"√"的几种方法,不会的朋友快快来学习吧! 第一种,利用Word中的"符号"插入钩. 首先打开word文档,选择插入-符号 再符号中-选择其他符号命令 字体中选择数字运算符,找到"√ 钩",点击插入即可. 第二种,利用输入法在Word中打

swift中变量的几种类型

swift中变量的几种类型 swift中变量分为 optional,non-optional 以及 implicitly unwrapped optional 这几种类型 var nullableProperty : AnyObject? // optional var nonNullProperty : AnyObject // non-optional var unannotatedProperty : AnyObject! // implicitly unwrapped optional

如何获取oracle中某表的字段类型。

问题描述 如何获取oracle中某表的字段类型. 解决方案 使用JDBC就可以的// 获取数据库的连接这些操作我就省了PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM H_TEST");ResultSet rs = pstmt.executeQuery();ResultSetMetaData rsmd = rs.getMetaData(); //获取字段名if(rsmd != null){ int count

Oracle中创建临时表、外部表和分区表实例

临时表 在Oracle中,临时表是"静态"的,它与普通的数据表一样只需要一次创建,其结构从创建到删除的整个期间都是有效的.相对于其他类型的表,临时表只有在用户实际向表中添加数据时,才会为其分配空间,并且分配的空间来自临时表空间.这就避免了与永久对象的数据争用存储空间. 创建临时表的语法如下: CREATE GLOBAL TEMPORARY TABLE table_name( column_name data_type,[column_name data_type,...] )ON CO

oracle中去掉回车换行空格的方法详解_oracle

去除换行update zhzl_address t set t.add_administration_num=replace(t.add_administration_num,chr(10),'');去掉回车update zhzl_address t set t.add_administration_num=replace(t.add_administration_num,chr(13),'');去掉空格update zhzl_address t set t.add_administration

查询Oracle中正在执行和执行过的SQL语句_oracle

查询Oracle正在执行的sql语句及执行该语句的用户 SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, paddr, sql_text 正在执行的SQL, b.machine 计算机名 FROM v$process a, v$session b, v$sqlarea c WHERE a.addr = b.paddr AND b.sql_hash_value = c.hash_value 其它网友给出的正

oracle中关于flashback闪回的介绍

1.必须设定undo保留时间足够大以能够重构需要闪回的数据 ALTER SYSTEM SET UNDO_RETENTION=; seconds值是undo数据保持的秒数. Flashback view是由undo retention interval来限制的. 2.包DBMS_FLASHBACK提供了需求接口 call dbms_flashback.enable_at_time('2010-10-19:11:00:00'); call dbms_flashback.disable(); ----