アプリケーションの一部としてタイムスタンプを使用していますが、Javascript と SQL Server で同時に作成されたタイムスタンプが異なる値を示すという問題があります。それらは同じコンピューターで実行されるため、システム クロックは問題になりません。
Javascript:
var now = new Date();
console.log( new Date(now.getUTCFullYear(),
now.getUTCMonth(),
now.getUTCDate(),
now.getUTCHours(),
now.getUTCMinutes(),
now.getUTCSeconds()).valueOf() /1000);
SQL サーバー 2012:
SELECT datediff(second,'1970-01-01 00:00:00.000',getutcdate())
datediff 引数の最初の部分が、1970 年 1 月 1 日を UTC で解釈していないのでしょうか?
テストするために、jsfiddle で JavaScript を実行し、管理スタジオで SQL を 1 ~ 2 秒以内に実行しました。
結果: Javascript: 1339348299 SQL Server: 1339384301
つまり、私のタイムゾーン オフセットである 36002 秒または 10 時間の差があります。