5

TOADで日付フィールドを取得すると、次のように表示されます' 1/18/2038 9:14:07 PM'、

しかし、cfqueryを使用してColdfusionに戻り、を使用して表示すると、' 2038-01-18 21:14:07.0'のように画面に日付が表示されます。

なぜそれが異なるフォーマットで表示されたのか誰かが知っていますか?とにかくTOAD形式のように表示させることはできますか?

Oracle10gDBとcoldfusion8を使用しています

4

2 に答える 2

8

次のようなものを使用できます。

<cfquery datasource="northwind" name="queryDB">
  SELECT date_used, time_used
  FROM invoicesTable
</cfquery>

<cfoutput query="queryDB">
#DateFormat(date_used, "m/d/yyyy")#
#TimeFormat(time_used, "h:mm tt")#
</cfoutput>

これがあなたの望むものだと思います。

あなたが使うことができます

#DateTimeFormat(Now(), "mmm d, yyyy","h:mm TT")#

日時形式にする

ハッピーコーディング

于 2010-01-07T15:41:18.243 に答える
5

データベースから取得したColdfusion日時変数には、要求しているすべての情報が含まれています。Coldfusionは、いくつかの組み込み関数を使用して、必要に応じて自動的にさまざまな出力に変換します。

<!--- Assuming that 'myDateTime' is a datetime variable retrieved from cfquery --->
<cfoutput>
    <!--- Outputs: 1/7/2010 --->
    #dateFormat(myDateTime, "m/d/yyyy")#
    <!--- or use a mask shortcut - only outputs two digit year: 1/7/10 --->
    #DateFormat(myDateTime, "short")#

    <!--- Outputs: 8:47:14 AM --->
    #timeFormat(myDateTime, "h:mm:ss tt")#
    <!--- or use the shortcut: --->
    #TimeFormat(myDateTime, "medium")#
</cfoutput>

TOAD形式で単一の文字列を作成する必要がある場合は、dateFormat()文字列とtimeFormat()文字列の出力を連結できます。

<!--- Outputs: '1/7/2010 8:47:14 AM' --->
<cfset toadFormat = dateFormat(myDateTime, "m/d/yyyy") & " " & TimeFormat(myDateTime, "medium")>

これにより、このデータを何度も使用する場合に少し手間を省くことができます。ただし、元のmyDateTime変数には、表示出力以外のすべての目的に必要なすべての情報が含まれているため、ほとんどのニーズではこれは不要です。

AdobeのDateFormat()TimeFormat()の詳細。PeteFreitagのDateFormatおよびTimeFormatショートカットの詳細。

于 2010-01-07T16:58:51.310 に答える