簡體   English   中英

將nodejs中的日期格式轉換插入Oracle時間戳

[英]convert and Insert date format in nodejs into Oracle timestamp

 let date = moment(new Date()).format("YYYY-MM-DD hh:mm:ss.000000000 A");

// 當我試圖在表格中插入日期時,它是 null

// OracleDB 中的時間戳格式為 14-03-22 3:53:08.901008000 PM

插入學生價值觀(join_date)('14-03-22 3:53:08.901008000 PM')

如何獲得像YYYY-MM-DD HH:MM:SS.FF3 AM/PM這樣的日期格式,因為在 oracle 中它支持這種時間戳

在 Oracle 中, TIMESTAMP是一種二進制數據類型,由 7 - 13 個字節(世紀、世紀年、月、日、小時、分鍾、秒和零到六個字節之間的小數秒)組成。 始終包含這些組件,並且從不以特定格式存儲。

您正在使用的客戶端應用程序(即 SQL/Plus、SQL Developer、NodeJS、Java 等)可能會選擇以默認格式顯示二進制值,但這是客戶端應用程序的 function 而不是數據庫的 function。 (一些客戶端應用程序可能使用數據庫中的NLS_TIMESTAMP_FORMAT session 參數作為它們的默認格式 model 但出於顯示目的從二進制到字符串的隱式轉換仍然是客戶端應用程序而不是數據庫所做的事情,並且並非所有客戶端都使用數據庫 session 個變量作為默認值。)

你應該:

  1. 使用時間戳文字:

     INSERT INTO STUDENT (join_date) VALUES (TIMESTAMP '2022-03-14 15:53:08.901008000');
  2. 使用格式為 model 的TO_TIMESTAMP function 將格式化字符串顯式轉換為時間戳二進制數據類型:

     INSERT INTO STUDENT (join_date) VALUES ( TO_TIMESTAMP('14-03-22 3:53:08.901008000 PM', 'DD-MM-RR HH12:MI:SS.FF9 AM') )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM