数据库SCN和时间的互相转换

说明:SCN(System Change Number 简称 SCN)是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字,可以理解成ORACLE数据库的时间戳,从ORACLE 10G开始,提供了函数可以实现SCN和时间进行相互转换;

  用途:在进行数据库的还原和利用数据库的闪回功能时,进行SCN和时间的转换就变的非常必要了;

  操作方法:

  1、通过dbms_flashback.get_system_change_number获得系统当前的SCN值:

  SQL>  select dbms_flashback.get_system_change_number scn from dual;

  SCN

  -----------------

  122037263

  2、通过scn_to_timestamp函数可以将SCN转换为时间戳:SQL> select scn_to_timestamp(122037263) scn from dual;

  SCN

  ---------------------------------------------------------------------------

  14-7月 -14 04.45.36.000000000 下午

  3、还可以通过timestamp_to_scn可以将时间戳转换为SCN:

  SQL> select timestamp_to_scn(to_date('2014-07-13,13:25:59','yyyy-mm-dd,hh24:mi:ss')) scn from dual;

  SCN

  ---------------------

  121936647

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-11-09 05:46:44

数据库SCN和时间的互相转换的相关文章

javascript-JavaScript 时间数字如何转换成中文大写

问题描述 JavaScript 时间数字如何转换成中文大写 例如, 把2012年12月31日转换成二〇一二年十二月三十一日.在线等! 急急急!!!!! 解决方案 function numToCN(s) { var sCN = '〇一二三四五六七八九'; function getCN(s) { var c = s.charAt(0) cCN = sCN.charAt(c); return s.length == 1 ? cCN : (c == '1' ? '' : cCN) + '十' + sCN

[SqlException (0x80131904): 从字符串转换日期和/或时间时,转换失败。

问题描述 数据库是从SqlServer2008移到SqlServer2014上,直接从VS2010上支行不会有问题,但是发布出去就有错,错误如下:"/"应用程序中的服务器错误.从字符串转换日期和/或时间时,转换失败.说明:执行当前Web请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.Data.SqlClient.SqlException:从字符串转换日期和/或时间时,转换失败.源错误:执行当前Web请求期

数据库开发篇(一)——转换日期类型

原文:数据库开发篇(一)--转换日期类型SQL Server支持的日期时间格式 SQL code Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GET

oracle通过修改控制文件scn推进数据库scn

数据库当前scn  代码如下 复制代码 idle> select   checkpoint_change# from v$database; CHECKPOINT_CHANGE# ------------------          271743118 idle> shutdown abort ORACLE 例程已经关闭. 分析控制文件中scn   这里我们可以看到加粗部分为数据库scn  代码如下 复制代码 SQL>select to_number('10327a59','xxxxx

asp.net sql server 日期时间格式CONVERT转换

asp教程.net sql server 日期时间格式convert转换 在客户端可以用tostring()方法进行格式化:   datetime.now.tostring("d")     返回标准的日期格式.   datetime.now.tostring("yy年mm月dd日")  返回中文日期格式:09年04月13日   datetime.now.tostring("hh:mm")      返回时间 :     5:20 参数可以随意组

Jquery时间验证和转换工具小例子

这篇文章介绍了Jquery时间验证和转换工具小例子,有需要的朋友可以参考一下   复制代码 代码如下: var TimeObjectUtil; /** * @title 时间工具类 * @note 本类一律违规验证返回false * @author {boonyachengdu@gmail.com} * @date 2013-07-01 * @formatter "2013-07-01 00:00:00" , "2013-07-01" */ TimeObjectUt

C#检索access数据库时如何将文本字段转换成数字

问题描述 C#检索access数据库时如何将文本字段转换成数字 检索的一个字段时文本类型,里面的内容包括:1000,还有一些具体的数字20,30, 50,如何在检索条件时,将文本类型装换成数字类型比较,检索出20和30呢? 解决方案 可以参考以下例子,table1.a为字符串,table2.b为数值 select a from Table1 where val(a) in (select b from Table2) or select a from Table1 where a in (sel

查询-从字符串转换日期和/或时间时,转换失败

问题描述 从字符串转换日期和/或时间时,转换失败 我想查询特定日期的数据,然后出现图中的提示,这是什么原因 解决方案 你的代码有两个问题 一个是你的ToString() 应该写yyyy-MM-dd,你这么写,无论用户怎么设置都是2015-4-1了 另一个是,你的日期和时间之间缺少空格. "00:00:00"修改为" 00:00:00" 解决方案二: 下一个断点,贴出你的CommandText,你的图显示不全,看不出另外一半.你的sql有问题.

mysql中如何更新数据库中的时间数据?

问题描述 mysql中如何更新数据库中的时间数据? 解决方案 update 表 set 字段='2011-1-1 0:0:0' where carid = 1 解决方案二: mysql创建存储过程(根据时间字段来更新数据)mysql获取数据库表最后更新时间,update_time 为null 解决方案三: 可以设置数据库自动产生时间,每次插入数据后都会自动产生时间,不用你手动插入