可以通過alter方法,進行修改,通過add primary 的形式來增加主鍵: sql: alter table a add constraint pk_a_b primary key (b); 解釋:以上語句就是給表a的b列設(shè)置為主鍵,主鍵的名稱就是pk_a_b。
我們提供的服務(wù)有:網(wǎng)站制作、網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、隆子ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的隆子網(wǎng)站制作公司
oracle是可以為視圖加主鍵,寫法:
create?or?replace?view?mylist(myid,insize,outsize,statrtime,endtime,jobid,imeiid,ip,useragent?UNIQUE?RELY?DISABLE?NOVALIDATE,CONSTRAINT?id_pk?PRIMARY?KEY?(myid)?RELY?DISABLE?NOVALIDATE)
as
select?job.dm_session_id?as?myid,
http.dm_request_size?as?insize,
http.dm_response_size?as?outsize,
job.begin_time_stamp?as?statrtime,
job.end_time_stamp?as?endtime,
job.job_id?as?jobid,
job.device_external_id?as?imeiid,
http.client_ip?as?ip,
http.user_agent?as?useragent
from?V_DM_TRACKING_LOG_JOB_SUM?job,DM_TRACKING_LOG_HTTP?http?where?job.Dm_Session_Id=http.dm_session_id
1、創(chuàng)建表的同時創(chuàng)建主鍵約束
(1)無命名
create
table
student
(
studentid
int
primary
key
not
null,
studentname
varchar(8),
age
int);
(2)有命名
create
table
students
(
studentid
int
,
studentname
varchar(8),
age
int,
constraint
yy
primary
key(studentid));
2、刪除表中已有的主鍵約束
(1)無命名
可用
SELECT
*
from
user_cons_columns;
查找表中主鍵名稱得student表中的主鍵名為SYS_C002715
alter
table
student
drop
constraint
SYS_C002715;
(2)有命名
alter
table
students
drop
constraint
yy;
3、向表中添加主鍵約束
alter
table
student
add
constraint
pk_student
primary
key(studentid);
1.先清理現(xiàn)有的數(shù)據(jù)并規(guī)劃只能一個主鍵,或者考慮組合主鍵(即ID列與另一個關(guān)鍵列組合成主鍵)
2.通過SQL增加主鍵:alter table tabname add constraint tabname_pk primary key (id) enable validate;
組合鍵:alter table tabname add constraint tabname_pk primary key (id,另一列名) enable validate;
工具/材料
SQL Developer
01
首先打開SQL Developer軟件,找一個沒有主鍵約束的表,如下圖所示
02
然后我們新建一個查詢,在界面中輸入如下的約束修改語句,如下圖所示,主要通過add constranint來添加約束
03
編寫完約束添加語句以后,點擊工具欄中的執(zhí)行按鈕,如下圖所示,如果輸出欄顯示已變更則證明主鍵約束創(chuàng)建成果
04
然后我們進入STUDENT表的約束添加頁中可以看到,我們加的主鍵約束已經(jīng)添加進去了,如下圖所示
05
另外,創(chuàng)建表的時候可以直接添加主鍵約束,如下圖所示,直接在表創(chuàng)建語句中添加constraint即可
06
表創(chuàng)建完以后,記得在左側(cè)刷新數(shù)據(jù)庫信息,如下圖所示,因為你創(chuàng)建的信息不刷新的話不會更新
07
最后打開你所創(chuàng)建的表,看到你添加的主鍵約束已經(jīng)加入進來了,這種方式的效果alter的方式是一樣的