首頁 > 資料庫 > Oracle > oracle怎麼修改主鍵

oracle怎麼修改主鍵

青灯夜游
發布: 2022-01-25 17:43:49
原創
20286 人瀏覽過

修改主鍵的方法:1.利用「ALTER TABLE 表名 DROP CONSTRAINT 主鍵名;」語句刪除主鍵;2、使用「alter table 表名 add primary key(字段);」語句新增主鍵。

oracle怎麼修改主鍵

本教學操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。

主鍵解釋:

       一個表格的唯一關鍵字 例如一個學生表 學號不能重複且唯一 ,學號就是關鍵字,也就是為主鍵。

有區別於外鍵:

       外鍵就是與其他表格連結的字段,還是例如有學生表還有一個選課表,這個時候要修改學生表中的學號,選課表裡對應的就也得變,這樣就需要給選課表加學號作為外鍵約束,這樣當你修改學號時所有外鍵關聯的就都改了

主鍵的新增、刪除等動作

1.有命名主鍵

1.有命名主鍵

1)有命名主鍵的添加

①建表時添加主鍵(yy為主鍵“ID”的主鍵名稱)

CREATE TABLE table_test(
 
id INT NOT NULL,       --注意:主键必须非空
 
name VARCHAR(20) NOT NULL,
 
address VARCHAR(20),
 
constraint yy PRIMARY KEY(id)
 
);
登入後複製
②建表後添加主鍵
alter table table_test add constraint yy primary key(id);
登入後複製

公式:

alter table 表名add constraint 主鍵名primary key(字段);

2)有命名主鍵的刪除

ALTER TABLE table_test DROP CONSTRAINT yy;
登入後複製

公式:

ALTER TABLE 表名DROP CONSTRAINT 主鍵名;

3)有命名主鍵的修改

需先删除主键,再进行添加
登入後複製
登入後複製

2.無命名主鍵

#1)無命名主鍵的建立

①建表時加入主鍵(主鍵「ID」的主鍵名稱需要查詢出來,下文有方法)

CREATE TABLE table_test(

id INT NOT NULL,       --注意:主键必须非空

name VARCHAR(20) NOT NULL,

address VARCHAR(20),

PRIMARY KEY(id)

);
登入後複製
②建表後新增主鍵
alter table table_test add primary key (id);
登入後複製

公式:

alter table 表名 add primary key(主鍵欄位1,主鍵欄位2...);

2)無命名主鍵的刪除

①先查出來主鍵名(constraint_name),user_cons_columns表會在文末給出解釋

SELECT t.* from user_cons_columns t where t.table_name  = 'TABLE_TEST' and t.position is not null;
登入後複製

公式:

SELECT t.* from user_cons_columns t where t.table_name  = '表名' and t.position is not null;   --表名必須大寫,如:TABLE_TEST②再執行刪除的SQL

ALTER TABLE table_test DROP CONSTRAINT SYS_C0056038;
登入後複製

公式:

ALTER TABLE 表名 DROP CONSTRAINT 主鍵名;

######3)無命名主鍵的修改########
需先删除主键,再进行添加
登入後複製
登入後複製
###建議教學:《### Oracle教學###》###

以上是oracle怎麼修改主鍵的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板