一意の値の制約が原因で、テーブルが「ブランチ」であり、SYS_C004023 がどこから来たかというエラー メッセージを特定できます。ブランチ テーブルを確認しましたが、値の重複はありません。何が問題になる可能性がありますか。
6611 次
1 に答える
1
SYS_C004023 はどこから来ましたか
これはシステム生成の制約名であり、明示的に名前を付けずに制約が作成されたときにOracleが作成します。
create table mytable (col1 integer primary key);
mytable の主キー制約は、次のように明示的に名前を付けていないため、システムによって生成されます。
create table mytable (col1 integer constraint mytable_pk primary key);
次のように、この制約がどのテーブルにあるかを確認できます。
select table_name
from all_constraints
where owner = 'HR'
and constraint_name = 'SYS_C004023';
そして、次のように一意にする列を見つけることができます。
select column_name
from all_cons_columns
where owner = 'HR'
and constraint_name = 'SYS_C004023';
値の重複はありません
いいえ、制約のおかげでありません。行を挿入または更新しようとして失敗したため、一意性制約に違反しています。
于 2010-10-07T14:11:08.123 に答える