Oracle資料庫修改主鍵

2022-08-23 05:36:14 字數 507 閱讀 9646

一、資料表有主鍵但無主鍵約束名

先刪除之前的主鍵,後新增主鍵

a.  alter table 表名 drop primary key;

b. alter table 表名 add primary key(想要更改的欄位名稱);

二、資料表有主鍵也有主鍵約束名

(1)刪除已有的主鍵約束名

a. 若已知主鍵約束名:alter table 表名 drop constraint 約束名 ;

b. 若不知主鍵約束名:

select * from user_cons_columns c where c.table_name='表名';

先查詢出改表的主鍵約束名,在執行

alter table  表名 drop constraint 約束名;

(2)增加新的主鍵約束

alter table 表名 add constraint 約束名 primary key(欄位名);

如何修改資料庫主鍵

以前寫了乙個系統,某張表a定義了乙個主鍵比如欄位名為name,該字段又作為另外一張表b的外部關鍵字,以前系統中是不能修改表a的主鍵的,現在有一特殊的要求,在不變更以前資料庫表結構的情況下需要能夠修改表a的主鍵,請問有什麼變通的實現方法?在sql中可以設定為級聯更新,或自己寫乙個觸發器來同步修改。觸發...

oracle資料庫修改主鍵時子表外來鍵處理

最近,專案需要把開發環境的資料與生產環境資料的主鍵保持一致,這就需要修改主鍵,但很多主鍵都是作為子表的外來鍵存在的,所以需要進行一些處理,以下是當時的實際操作步驟 1 根據其他資訊把開發資料與生產資料的主鍵對應起來。alter table tablename disable constraint c...

Oracle資料庫主鍵自增

在學習mysql時,我們很容易通過auto increment就能實現主鍵自增的功能,但是在oracle資料庫中,是沒有這個關鍵字的,所以也不能通過這樣來實現主鍵自增。下面我就為大家介紹兩種實現主鍵自增的方法。兩種方法的基礎都有乙個概念就是序列 sequence 的概念,一種是利用序列和顯式呼叫的方...