佐藤(健)@KCOM です。
いつもお世話になっております。

仰られるとおり、DATE, TIMESTAMP の場合には TO_CHAR を使うのが正しい
(暗黙の型変換はせず、エラー)と思いますので、その方向で利用させて頂き
ます。

自分で話題を出しておきながら、誠に申し訳ありません。

以上

At Mon, 17 Feb 2003 13:24:45 +0900, KUBO Takehiro wrote,

>久保@茅ヶ崎市です。
>
>KUBO Takehiro <kubo / jiubao.org> writes:
>
>>> TIMESTAMP 型にアクセスすると、下記のエラーになります。
>>> VERCHAR2, DATE, NUMBER は問題無いようです。
>(snip)
>> として無条件で文字列として定義すればなんとかなるかもしれません。
>
>別解としては、TimeStamp 型を直接 select せずに、TO_CHAR 等で明示的に
>型変換させるという手もあります。
>
>ruby 側に対応する型がない場合は、それ専用の ruby のクラスを用意するか
>文字列として取り出すしかないわけです。そして文字列として取り出す場合は、
>暗黙の型変換にたよると環境が変わったときに書式が変わってしまうかもしれ
>ません。
>
>TimeStamp 型を使ったことはないのですが、断言はできませんが、少なくとも
>DATE 型を使用する場合は暗黙の型変換を使ってしまうと、使用しているマシ
>ンの NLS_DATE_FORMAT に従って暗黙の型変換後の書式が変わってしまいます。
>ある書式を前提にしたアプリケーションを作ってしまうと、NLS_DATE_FORMAT
>の違う別のマシンでは動かないということがおこります。アプリケーションで
>使用する場合は暗黙の型変換は利用せずに TO_CHAR で明示的に型変換させる
>のが鉄則です。
>
>> うーむ、どちらをデフォルトにするべきか....。
>
>アプリケーションとして使う場合は暗黙の型変換は利用しないほうが良いので、
>エラーにしたのが良いけど、単に表示させたい場合は暗黙の型変換させたほう
>が楽。どちらかをデフォルトにして、オプションで選択できるようにしたのが
>良いかな。
>
>では、再見