日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

本文介紹了Oracle 12c:插入到具有標識列的表中的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有一個表,其中一列的類型為Identity Column,它也是主鍵。

CREATE  TABLE identity_demo  (
    id NUMBER GENERATED BY DEFAULT ON NULL AS IDENTITY,
    description VARCHAR2(100) not null
  );

然后我插入幾行數據

insert into identity_demo (id, description) values (1,'A');
insert into identity_demo (id, description) values (2,'B');
insert into identity_demo (id, description) values (3,'C');
insert into identity_demo (id, description) values (4,'D');
insert into identity_demo (id, description) values (5,'E');
insert into identity_demo (id, description) values (6,'F');

如果現在要插入未設置值ID的行,則會出現鍵違規

insert into identity_demo (description) values ('G');

ORA-00001:唯一約束(UWE.IDENTITY_DEMO_PK)版本
在此繼續的最佳方式是什么?

推薦答案

手動插入的標識值(1到6)與序列生成器生成的標識值之間存在沖突。您可以通過調整序列生成器來修復它:

ALTER TABLE identity_demo MODIFY (
  id GENERATED BY DEFAULT ON NULL AS IDENTITY (START WITH LIMIT VALUE));

START WITH LIMIT VALUE鎖定表,查找最高ID并將內部序列生成器設置為下一個較高的值7

如果您不想運行此ALTER TABLE命令,您可以分隔數字空格,比如手工值為1…999,而手動值為1000…用于自動值。您必須這樣設置您的發電機:

ALTER TABLE identity_demo MODIFY (
  id GENERATED BY DEFAULT ON NULL AS IDENTITY (START WITH 1000));

INSERT INTO identity_demo (description) VALUES ('H');

...
6      F
7      G
1000   H

這篇關于Oracle 12c:插入到具有標識列的表中的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,

分享到:
標簽:ddl errorOracle12c:InsertintoTablewithIdentityColumn exception identity 
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定