![](/img/trans.png)
[英]How do I format am-pm-of-day to be "AM/PM" rather than "a.m./p.m."?
[英]JOOQ Issue: AM/A.M. or PM/P.M. required
我使用JOOQ 3.4.1作為與Oracle數據庫進行通信的中間件,但是當我在代碼中編寫以下查詢時,出現了SqlDataException:AM / AM或PM / PM。
select 0 prodid, cast(((cast('31-DEC-' as varchar2(4000)) || cast(YearForBilling as varchar2(4000))) || ' 12.59.00.000000000 PM ') as timestamp) theDate 0 Balance from ProductDetails where productRSN = 71
group by YearForBilling
有人可以幫我解決該問題嗎?
我永遠不會依賴於與語言環境相關的格式化日期和時間戳字符串。 從不 。 您永遠都不知道這些設置是否會在某個時間點發生更改,例如作為系統默認值或作為會話設置等。請不要依賴它。 別這樣
如果可以的話,請使用完全不依賴於NLS
設置的SQL標准時間戳文字( 我已經在此寫過博客 )。 例如:
TIMESTAMP '2016-12-31 23:59:00.0'
在您的情況下,您正在動態創建日期,因此時間戳文字將不起作用。 但仍然請使用ISO 8601日期格式,例如
TO_TIMESTAMP(YearForBilling || '-12-31 23:59:00', 'YYYY-MM-DD HH24:MI:SS')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.