create table autos (
id integer generated by default on null as IDENTITY unique,
owner_name nvarchar2(50)
);
次に、テーブルにいくつかの行を挿入します
insert into autos
(owner_name)
VALUES
('Nick');
insert into autos
(owner_name)
VALUES
('Tommy');
2行が挿入された後、行数を増やすために、このクエリを実行します
insert into autos
(owner_name)
select owner_name
from autos;
いくつかのクエリが正常に実行されましたが、この後、オラクルはエラーを返します:ORA-30667: cannot drop NOT NULL constraint on a DEFAULT ON NULL column
ここで何が問題なのか教えてください。
PS私はSQL Developerを使用しています。
アップデート
データベース接続で上記のすべてのコードを試している場合sys
、すべて正常に動作しますが、新しいユーザーを作成しています (新しいユーザーを作成する方法のコードは次のとおりです)。
CREATE USER C##OTO_USER
IDENTIFIED BY oto_user_pass;
GRANT ALL PRIVILEGES TO C##OTO_USER;
次に、新しい接続を作成C##OTO_USER
し、この接続でのみ上記のエラーが発生します。
また、そのエラーが発生することもあれば、INSERT
クエリが正常に機能することもあります。
だけINSERT... SELECT
でなく、通常、INSERT
ステートメントでもそのエラーが発生します。
したがって、これは新しいユーザー/接続の問題だと思います.ユーザー作成コードの上にある可能性があり、完全なユーザーを作成するのではありませんか?
SQL*PLUS で挿入しようとすると、同様のエラーが発生します。