2009-08-21 31 views
3

mysql datetime値をCF8のcoldfusion datetime値に変換する簡単な方法は誰にも知られています(CF6との下位互換性が必要な場合もあります)。mysql datetimeからcoldfusion datetimeに変換する

私は日付の時間をmysqlに格納する必要があり、日付の範囲と比較を行うためのデータベースをmysql datetime形式で保存することを選択しました。 CFでこのようなことができるかもしれませんが、処理する可能性のある巨大な結果セットを取得する必要があります。私にとってこれに対処するためにDBを手に入れようとはるかに元気だ。

私のフロントエンドコードはcoldfusionで、cf date timeオブジェクトをmysqlが挿入時に理解できるものに変換するのは簡単です。しかし、私は困ったことに彼らを戻してきました。

CreateDateTime関数がありますが、最初にmysqlの結果を別の年、月、日などの部分に分割する必要があります。それは難しいことではありませんが、他の方向に日付を変換することと比べて、不必要に複雑に思われます。

ParseDateTime関数は、書式設定およびクライアントに送信する前に、日時オブジェクトサーバー側でさらに処理を行いたいため、どちらも良いことではありません。

これを行う簡単な方法を知っている人はいますか?あるいは、私は簡単な変換を一方向に、そしてクルージングをもう一方の方法で解決しなければなりませんか?

+0

値がdatetime列に格納されている場合は、照会時に自動的にCF datetimeオブジェクトに変換される必要があります。私はここに何かを逃しているはずです...;) – Leigh

+1

ちょっと赤が現れました。私はCFが私のためにその自動変換を行っていたことは知らなかった。私は試したことはありません私は自分でそれをやらなければならないと思った。だから私は今日2つのことを学んだ。 – nedlud

+0

「電球」の瞬間があるときはいつでもいい日です! – Leigh

答えて

3

date_formatは、このために非常に良いです:

date_format(myDateCol, '%m/%d/%Y') 

また、あなたがこの上の日付の計算に必要な場合は、date_formatは自分のラッパーになります日付をフォーマットします

date_format(date_add(myDateCol, interval 7 day), '%m/%d/%Y') 

今から(+ 7日間)、ColdFusionフォーマットに移行しました。

+0

ありがとう。それはまさに私が必要なものです。私は私のためのフォーマットを行うためにmysqlを得ることができるか分からなかった(学ぶほど)。私は今、より幸せな人です。 – nedlud

+0

うれしい私は助けることができました! MySQLとSQLには、一般的に見落とされるような非常に強力なものがたくさんあります。あなたが知らないものを見つけるためには、1日か2日のドキュメントを掘り下げて使う価値があります! – Eric

+0

いいえ、ポイントをbelabour;)..しかし、私はOPはdatetimeオブジェクトが欲しいと思った?ドキュメンテーションによると、date_format関数は文字列を返します。 – Leigh

2

このためにCreateODBCDateTime(date)関数を使用できます。

+3

ああ...間違った方法。これにより、ColdFusionの日付が* MySQLに挿入されます。 OPは、MySQL形式からColdFusion形式への変換を検討しています。 – Eric

+0

これは "coldfusion datetime to mariadb datetime"をグーグルで検索したときの最初の結果なので、まだ価値があると思います。 –

関連する問題