プロが教える店舗&オフィスのセキュリティ対策術

オラクル初心者で、初めて質問します。
3点ほど、質問があります。どなたか宜しくお願いします。

(1)SELECT文発行時、抽出件数が0件(NotFound)、またはUPDATE文発行時、更新件数が0件の場合って、
エラーコードはORA-00000(正常終了)で合ってますか?

(2)エラーコードのリファレンス読んでたら、ORA-00001はUpdate、もしくはInsert時に一意制約に反しているとありますが、
Insert時は分かるのですがUpdate時ってどういう条件でORA-00001が出るのでしょうか?


(3)正常終了した場合も含めてエラーコードを確認することが可能なツール(フリーがBEST)とかご存知でしたら教えてください。

以上です。どうぞ宜しくお願いします。

A 回答 (3件)

(1)SELECT文発行時、抽出件数が0件(NotFound)、またはUPDATE文発行時、更新件数が0件の場合って、


エラーコードはORA-00000(正常終了)で合ってますか?

ORA-00000というのは見たことがありませんのでコメントのしようがありません。マニュアルに記載がありましたか?

(2)エラーコードのリファレンス読んでたら、ORA-00001はUpdate、もしくはInsert時に一意制約に反しているとありますが、
Insert時は分かるのですがUpdate時ってどういう条件でORA-00001が出るのでしょうか?

例を示しておきます。

CREATE TABLE sample (
col varchar2(1)
);

CREATE UNIQUE INDEX col_idx ON sample (col);

INSERT INTO sample VALUES ('a');
INSERT INTO sample VALUES ('b');
COMMIT;

UPDATE sample SET col = 'a' WHERE col = 'b';

これで col = 'a' のデータは既に存在するので一意制約違反が発生するでしょう。

(3)正常終了した場合も含めてエラーコードを確認することが可能なツール(フリーがBEST)とかご存知でしたら教えてください。

開発ツール (接続方法。ODBC、JDBC等) にもより、それを記載されていないため、回答のしようがありません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
また、質問内容が不十分であったことをお詫び致します。

(1)ORA-00000というのは見たことがありませんのでコメントのしようがありません。マニュアルに記載がありましたか?

>エラーコード一覧が手元にあってそちらに記載されていましたが・・・

(2)
>つまり、Keyを変更した際に一意制約違反が発生するのですね。ありがとうございます。

(3)接続方法はODBCです。

お礼日時:2005/11/03 14:00

1) あっています。

DML は正常終了(ORA-00000)です。取り出し(フェッチ)をするとエラーになるはずです。

2) プライマリキーを変更すれば発生します。

3)参考 URL が役に立ちます。(無料の会員登録が必要です。)
関連する情報も一緒に表示されます。

参考URL:http://otn.oracle.co.jp/document/msg/index.html
    • good
    • 0
この回答へのお礼

1)やはり、そうですよね。ありがとうございます。

2)納得です。ありがとうございます。

3)早速、会員登録しました。すぐは見られないみたいですけど・・・ありがとうございます。

お礼日時:2005/11/03 14:07

#2 です。



3) に関して、もしオフラインで利用できるものを探しているのでしたら
過去のバージョンですが、Oracle 9i のものが使えます。

参考URL:http://otn.oracle.co.jp/document/products/oracle …
    • good
    • 0
この回答へのお礼

わざわざありがとうございます。
試してみます。

お礼日時:2005/11/03 14:09

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