Oracle для профессионалов

         

Получение времени с точностью до миллисекунд


Примеры становятся все меньше, короче и выполняются быстрее. Это я и хочу подчеркнуть. С помощью небольших фрагментов Java-кода, примененных в соответствующих местах, можно существенно расширить функциональные возможности.

В Oracle 9i эта функция станет избыточной, поскольку эта версия поддерживает временные отметки с точностью менее секунды. Но при необходимости такая точность измерения времени достижима и в предыдущих версиях:

tkyte@TKYTE816> create or replace java source 2 named "MyTimestamp" 3 as 4 import java.lang.String; 5 import java.sql.Timestamp; 6 7 public class MyTimestamp 8 { 9 public static String getTimestamp() 10 { 11 return (new 12 Timestamp(System.currentTimeMillis())).toString(); 13 } 14 }; 15 /

Java created.

tkyte@TKYTE816> create or replace function my_timestamp return varchar2 2 as language java 3 name 'MyTimestamp.getTimestamp() return java.lang.String'; 4 /

Function created.

tkyte@TKYTE816> select my_timestamp, 2 to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual 3 /

MY_TIMESTAMP TO_CHAR(SYSDATE,'YY ------------------------- ------------------- 2001-03-27 19:15:59.688 2001-03-27 19:15:59



Содержание раздела