- PR -

C#でのORACLE接続&データ抽出

投稿者投稿内容
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-08-08 13:07
引用:

ashさんの書き込み (2003-08-08 12:28) より:

DOS上で実行しているので、戻ってきている値の型はすみませんが知らべられません。


 object.GetType.ToStringでとれます。
ash
会議室デビュー日: 2003/08/08
投稿数: 6
お住まい・勤務地: 神奈川
投稿日時: 2003-08-08 13:56
度々ありがとうございます。

[テーブル定義]
AAA:NUMBER(20)
BBB:VARCHAR2(10)
CCC:VARCHAR2(5)
DDD:VARCHAR2(6)
(実際のテーブルは、列が80項目ぐらいありますが、
抽出するのは上記のように4項目です。)


[データ型調査結果]
AAA:System.Decimal
BBB:System.String
CCC:System.String
DDD:System.String

上記ような結果となりました。
特に問題なさそうに見えるのですが・・・。


[ メッセージ編集済み 編集者: ash 編集日時 2003-08-08 14:00 ]
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-08-08 14:52
 データベースを作るときに指定したコードセットと、環境変数NLS_**が示すコードセットが違うから・・・なんてことはありませんか?Win.2kということなので、OSはUnicodeで処理しますが、文字コードの変換が正しくできていないのでは?という気がします。

 化けている文字に、規則性はないでしょうか。SQL*Plusで実行した結果と、作成中のアプリの結果を比べてみてください。
ash
会議室デビュー日: 2003/08/08
投稿数: 6
お住まい・勤務地: 神奈川
投稿日時: 2003-08-08 16:05
引用:

Jittaさんの書き込み (2003-08-08 14:52) より:

 化けている文字に、規則性はないでしょうか。SQL*Plusで実行した結果と、作成中のアプリの結果を比べてみてください。


規則性という意味では、以下のように、抽出結果と正しい結果を見比べると
同じ列で、同じ数字だと、2レコード目から下数桁がなくなってしまうという
現象が起こっています。

[抽出結果]
AAA[21085]BBB[0307090545]CCC[5149]DDD[100237]
AAA[21087]BBB[0307090547]CCC[51??]DDD[100231]
AAA[21088]BBB[0307090548]CCC[51 ]DDD[100 ]
AAA[21089]BBB[0307090549]CCC[51 ]DDD[100252]
AAA[21090]BBB[0307090550]CCC[51 ]DDD[100 ]

[正しい結果]
AAA[21085]BBB[0307090545]CCC[5149]DDD[100237]
AAA[21087]BBB[0307090547]CCC[5149]DDD[100231]
AAA[21088]BBB[0307090548]CCC[5149]DDD[100231]
AAA[21089]BBB[0307090549]CCC[5149]DDD[100252]
AAA[21090]BBB[0307090550]CCC[5149]DDD[100252]

スキルアップ/キャリアアップ(JOB@IT)