dポイントプレゼントキャンペーン実施中!

プログラムもほとんど知らない素人ですが質問させていただきます。^^;
oracle9iデータベースで、未抽出の情報があれば、「抽出済みフラグ」を立て、さらにその情報はテキストファイルに出力する処理を開発者に作ってもらいました。

しかし、データの10件に抽出済みフラグが付いたのに、テキストファイルへの出力は8件とか9件しか出力されない といった現象が頻発して困っています。

当初はSQL文のみのプログラム(?)で現象が出たのでVBプログラムで作り直してもらったのですが、同じ現象が出ます。

データ総件数は3万件ぐらいで、抽出される件数は20~100件ぐらいです。

こういったトラブルはoracleデータベースで一般的にあり得るのでしょうか?
よろしくお願いします。

A 回答 (2件)

Oracle に限らず、設計・プログラムがまずいと、そういうことはありうると思います。

逆に言うと、設計・プログラムがしっかりしていれば、そういうことにはなりません。
    • good
    • 0

こんにちわ



恐らく読取り一貫性の問題ではないでしょうか?
未抽出のレコードを出力するためのSelect 文が実行される前に
Commit されているデータのみが抽出の対象になりますので、
データがInsert されてもCommit されていなければ
別トランザクション (抽出処理を行う Select 文) では抽出の対象
になりません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!