RPAD - это строковая функция, поэтому, когда вы применяете ее к значению DATE, Oracle сначала должен неявно преобразовать дату в строку, что он делает, используя маску формата сеанса по умолчанию, которая обычно не включает компонент времени. Попробуйте вместо этого:
SELECT SYSDATE, RPAD (TO_CHAR(SYSDATE,'DD-Mon-YY HH:MI:SS'), 16)
FROM DUAL;
Сказав это, вы получаете время, когда вы просто выбираете SYSDATE. Если я попытаюсь повторить ваш случай, я вижу это:
SQL> alter session set nls_date_format = 'DD-MON-RR HH24:MI:SS';
SQL> select sysdate, rpad(sysdate,16) from dual;
SYSDATE RPAD(SYSDATE,16)
------------------ ----------------
21-FEB-11 11:20:20 21-FEB-11 11:20:
т.е. почти то, что вы надеялись увидеть. Что заставляет меня задуматься: как вы устанавливаете формат так, чтобы SELECT SYSDATE FRU DUAL показывал время?