PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
1834 98/06/12 17:46:18 RE:RE:RE:RE:ちょっと試してみましたが... By gretzky
1828 98/06/12 13:22:46 RE:RE:RE:ちょっと試してみましたが... By gretzky
1824 98/06/12 11:39:32 RE:RE:ちょっと試してみましたが... By gretzky
1819 98/06/12 11:09:32 RE:ちょっと試してみましたが... By gretzky
1818 98/06/12 10:42:08 ちょっと試してみましたが... By M.M
1812 98/06/11 20:25:24 RE:RE:PB5: データウィンドウとORACLE By gretzky
1811 98/06/11 19:48:29 RE:PB5: データウィンドウとORACLE By まこと
1804 98/06/11 18:19:51 PB5: データウィンドウとORACLE By gretzky

カテゴリ:旧電子会議室
日付:1998年06月12日 13:22 発信者:gretzky
題名:RE:RE:RE:ちょっと試してみましたが...

>>>CREATE TABLE SCOTT.\"NUMBER_TEST\"
>>>       (\"CODE\" NUMBER(4,0) NOT NULL,
>>>       \"DATA\" NUMBER(20,16)) ;
>>>
>>>ALTER TABLE SCOTT.\"NUMBER_TEST\" ADD ( CONSTRAINT key_number_test PRIMARY KEY (\"CODE\"));
>>>
>>>上記のテーブルをOracleサーバ7.3で作成し、データウィンドウも作ってみましたが、
>>>\'0.009432424\'を書き込んでから再度DWに表示して見ましたが、特に数値誤差は発生しませんでした。
>>>ひょっとして、DW上で何か計算しているのですか?
>>>
>>
>>リプライありがとうございます。
>>DATAの型はNUMBER(20,16)ではなく、NUMBERです。(桁数指定なし)
>>で、現状でつかめている事象としては誤差は小数点以下16桁目に\'2\'という形で現れるということです。

>自己レスです。
>どうも原因は精度の問題のようです。
>DWは有効桁数16桁、DBはそれ以上としているのでDB→DWで誤差が発生しているようです。
>もしそうだとしたら回避する方法はあるのでしょうか。(DBを変更しないという前提で)

またしても自己レスです。
こんなやり方を考えましたが問題ないでしょうか?

(1)NUMBER型の数値をNUMBER(38,16)にしてテーブルを作成する。
(2)DWを作成する。
(3)(1)で作成したテーブルの属性をNUMBER(38,16)からNUMBERに変更する。

私の想定ではDWのデータ属性がNUMBER型だとFLOATになっていることが問題の様なので、
無理矢理だましてしまうというやり方です。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.