[英]Javascript date to sql date object
I'm trying to write a query that takes a Javascript date object and then puts it in an object type that is recognized by both SQL Server and Oracle database types.
問題是我正在使用網絡服務。 所以它必須是一個字符串,而不是實際傳遞的參數。 這就是我的意思:
var date = new Date();
var firstDayOfMonth = new Date(date.getFullYear(), date.getMonth(), 1);
var lastDayOfMonth = new Date(date.getFullYear(), date.getMonth() + 1, 0);
var webServicesQueryWhereClause = 'readDate BETWEEN '+firstDayOfMonth+' AND '+lastDayOfMonth;
除了firstDayOfMonth
和lastDayOfMonth
被to_date()
之類的東西包圍,實際上將它們放在數據庫可以讀取的日期格式中。 例如:
var webServicesQueryWhereClause = 'readDate BETWEEN to_date('+firstDayOfMonth+') AND to_date('+lastDayOfMonth+') ';
我應該用什么將這些日期放在 SQL 服務器和 Oracle 都可以讀取的形式中?
您是否嘗試過此處提供的解決方案:
標題應該叫
“將 JS 日期轉換為 SQL 日期時間”
我碰巧需要和你剛才做同樣的事情,在你提出問題后我遇到了這個問題。
這是 Gajus Kuizinas 為那些想要在此頁面上提供答案的人的另一篇文章:
var pad = function(num) { return ('00'+num).slice(-2) };
var date;
date = new Date();
date = date.getUTCFullYear() + '-' +
pad(date.getUTCMonth() + 1) + '-' +
pad(date.getUTCDate()) + ' ' +
pad(date.getUTCHours()) + ':' +
pad(date.getUTCMinutes()) + ':' +
pad(date.getUTCSeconds());
或
new Date().toISOString().slice(0, 19).replace('T', ' ');
第一個為我工作。 我也有一個關於 toISOString 的參考問題,盡管我更喜歡一個班輪。 任何人都可以澄清如何使用它並知道在哪里可以引用它的限制嗎? 祝你好運!
在我的情況下,我試圖獲取一個 TIMESTAMP 並將其存儲到一個變量中,以便我可以在 SQL 查詢中傳遞該數組(行插入)
以下對我很有效。
var created_at = new Date().toISOString().slice(0, 19).replace('T', ' ');
可能是我發現了一個更短的方法 - 在 MSSQL 和 Postgres 上測試
const date = (new Date()).toLocaleString("en-US")
享受!
我用:
const datetimeSQL = new Date().toISOString().split('T').join(' ').split('Z').join('');
// return '2022-09-02 19:54:17.028'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.