.NET のUniversal Sortable Time 形式を使用して Oracle が日付を返すようにしたいので、このかなり優れた日付/時刻形式を一貫して使用できるようになり、形式として "u" を使用するだけで結果を DateTime に簡単に解析できます。
// "u" is less unwieldy than "yyyy'-'MM'-'dd HH':'mm':'ss'Z'"
myDT = DateTime.ParseExact(oraString, "u", CultureInfo.InvariantCulture);
Oracle に次の形式を返すように簡単に設定できます。
SELECT to_char(sysdate, 'YYYY-MM-DD HH:MM:SS') || 'Z' udt FROM dual
ただし、連結に「Z」を追加すると、問合せで次の形式のバインド変数を実際に使用できなくなります。
someBindMethod("uformat", "YYYY-MM-DD HH:MM:SS"); // Hypothetical .NET/Oracle lib
-- No matter the format string, date/time will always end with 'Z'.
SELECT to_char(sysdate, :uformat) || 'Z' udt FROM dual
(「Z」がフォーマット文字列を終了する場合、Oracle は不平を言います)
ソート可能な普遍的な時刻形式を返すことができるようにバインド文字列を渡すにはどうすればよいですか?ただし、クエリを変更せずに他の日付形式を使用することはできますか?