create table autos (
id integer generated by default on null as IDENTITY unique,
owner_name nvarchar2(50)
);
然後我在表中插入多個行ORACLE 12 C,不能在DEFAULT下降NOT NULL約束ON NULL柱
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;
幾個查詢成功運行,但在此之後,Oracle返回錯誤:ORA-30667: cannot drop NOT NULL constraint on a DEFAULT ON NULL column
請說,這裏有什麼問題?
P.S.我使用SQL Developer。
UPDATE
如果我想所有上面的代碼中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,也發生同樣的錯誤。
錯誤消息不匹配您的SQL語句 –
@a_horse_with_no_name,我也想知道,但是當我試圖運行'INSERT ... SELECT'查詢,返回的正是這種錯誤消息。 – RIKI
這適用於我在Oracle 12c和SQL Developer 3.2.20.09上的正常工作。如果您在SQL * Plus中運行此代碼會發生什麼? SQL * Plus更穩定可預測,運行它會告訴我們這是數據庫問題還是IDE問題。 –