2015-05-12 108 views
0

我需要驗證'timestamp with time zone'類型的輸入參數的格式。它在腳本中作爲替代變量傳遞。 格式爲'YYYY-MM-DD HH24:MI:SS TZH:TZM'。 我應該如何驗證傳遞的值是給定的格式。哪個oracle函數用於這個?在oracle腳本中驗證'date'/'timestamp'/'timestamp with time'區域類型參數的格式

不能使用TO_TIMESTAMP_TZ功能,因爲它只會炭EXP轉換成時間戳和TZ。 這裏我想驗證通過'timestamp with time zone'變量的格式。

+0

日期沒有任何格式。它們以Oracle專有的內部格式存儲。在你看到的是以人類格式顯示。您所需要的只是使用適當的格式模型來確保發生明確的轉換。 –

+0

您需要一個REGULAR EXPRESSION來驗證TIMESTAMP。這個問題是可能的重複:http://stackoverflow.com/questions/1057716/regular-expression-to-validate-a-timestamp – UltraCommit

+0

此外,可能的重複:http://stackoverflow.com/questions/14662597/ how-to-check-regular-expression-for-timestamp-in-gwt – UltraCommit

回答

0

可以使用TO_TIMESTAMP_TZ爲前:

SELECT TO_TIMESTAMP_TZ('1999-12-01 11:00:00 -8:00', 
    'YYYY-MM-DD HH:MI:SS TZH:TZM') FROM DUAL; 
+0

TO_TIMESTAMP_TZ使用tz將char/varchar/varachar2轉換爲時間戳。我想用tz類型來驗證時間戳的格式 – PVJ