⑴ sql怎麼設置主鍵
1.主鍵語法
①創建時:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno) );
②修改時:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);
前提是原先沒有設置主鍵。
2.外鍵語法
①創建時:create table sc (
studentno int,
courseid int,
score int,
foreign key (courseid) );
②修改時:
ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[約束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ;
3.使用組合主鍵
如果一列不能唯一區分一個表裡的記錄時,可以考慮多個列組合起來達到區分表記錄的唯一性,形式
①創建時:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno,courseid) );
②修改時:alter table tb_name add primary key (欄位1,欄位2,欄位3);
前提是原來表中沒有設置主鍵,若原先已有主鍵則會報錯。
⑵ 用SQL腳本修改表的的主鍵問題
不知道你什麼資料庫.
假如是
SQL
Server
的話,
主鍵必須先非空
1>
CREATE
TABLE
test_tab
(
2>
id
INT,
3>
name
VARCHAR(10),
4>
age
INT,
5>
val
VARCHAR(10)
6>
);
7>
go
1>
ALTER
TABLE
test_tab
2>
ADD
CONSTRAINT
pk_test_tab
PRIMARY
KEY(id);
3>
go
消息
8111,級別
16,狀態
1,伺服器
HOME-BED592453C\SQLEXPRESS,第
1
行
無法在表
'test_tab'
中可為空的列上定義
PRIMARY
KEY
約束。
消息
1750,級別
16,狀態
1,伺服器
HOME-BED592453C\SQLEXPRESS,第
1
行
無法創建約束。請參閱前面的錯誤消息。
首先對
id
這個列,增加一個
NOT
NULL
約束,然後再設置為主鍵。
1>
ALTER
TABLE
test_tab
2>
ALTER
COLUMN
id
INT
NOT
NULL;
3>
go
1>
ALTER
TABLE
test_tab
2>
ADD
CONSTRAINT
pk_test_tab
PRIMARY
KEY(id);
3>
go
⑶ sql資料庫中,當表中有多個列同時作為表的主鍵時,應該怎麼設置呢
可以用如下方法進行設置:
第一,如果是用SQL語句建表,如下:(假設要讓a和c組合作為主碼)
create table t1(
a int,
b varchar(20),
c int,
primary key(a,c)
)
第二,如果用圖形化界面做,按住ctrl鍵,然後選擇a和c兩個列,接著右鍵菜單選擇「設置為主鍵」即可。
一個表中最多隻能有一個主鍵,也可以沒有。一個主鍵既可以是單一的欄位構成,也可以是多個欄位聯合構成,如果是單一欄位,只需在該欄位後面標記primary key即可,如果是多個欄位聯合構成,則需要採用最開始介紹的那種方式設置。
⑷ 怎麼用sql語句在已有表上設置復合主鍵
例如:x0dx0a已有一個表test_key,其中a1列為主鍵。x0dx0acreate table TEST_KEYx0dx0a(x0dx0a a1 VARCHAR2(3) not null,x0dx0a a2 VARCHAR2(3),x0dx0a b1 VARCHAR2(3),x0dx0a b2 VARCHAR2(3)x0dx0a);x0dx0a x0dx0aalter table TEST_KEYx0dx0a add constraint PK_TEST_KEY primary key (A1)x0dx0a using index;x0dx0a x0dx0a現在要將a2,b1也增加到主鍵中與原有的a1一起組成復合主鍵。語句如下:x0dx0aalter table TEST_KEYx0dx0a drop constraint PK_TEST_KEY cascade;x0dx0aalter table TEST_KEYx0dx0a add constraint PK_TEST_KEY primary key (A1, A2, B1)x0dx0a using index;x0dx0a x0dx0a這樣就可以了。
⑸ sql的鍵值類型的主屬性怎麼設置
sql的鍵值類型的主屬性怎麼設置?sql要怎麼設置主鍵呢?本文以sql server資料庫為例,講解幾種設置方式:
1)新建表時設置主鍵
2)修改表主鍵
3)sql語句刪除主鍵
4)sql語句添加主鍵
5)sql語句修改主鍵
方法/步驟分步閱讀
1
/8
打開【SQL Server Management Studio】管理工具,連接資料庫
2
/8
【新建表時設置主鍵】- 打開新建表界面
1)展開要新建表的資料庫
2)右鍵【表】菜單,依次選擇【新建】->【表】
3
/8
【新建表時設置主鍵】- 設置主鍵
1)在「新建表界面」,加入兩個測試列的行
2)選擇任何一行,右鍵選擇【設置主鍵】
3)聯合主鍵設置:按住ctrl鍵,配合滑鼠左鍵,可以多選幾行,然後右鍵選擇【設置主鍵】
4)添加列後,點擊【保存】按鈕,在彈出框中輸入「表名稱」,點擊確定按鈕即可
4
/8
【修改表主鍵】- 打開設計表界面
右鍵選擇要修改的表,選擇【設計】菜單,即可打開此表的設計界面,此時,可以修改列名、列類型、長度等等
5
/8
【修改表主鍵】- 修改主鍵
1)在「表設計」界面,右鍵任何一行,選擇「設置主鍵」
2)調整好表屬性後,點擊「保存」按鈕即可
3)聯合主鍵設置:按住ctrl鍵,配合滑鼠左鍵,可以多選幾行,然後右鍵選擇【設置主鍵】
4)對於有數據的表,如果修改後的主鍵存在數據重復行,則會提示修改失敗,此時,需要視具體業務場景刪除重復記錄或者更改另外的列作為主鍵
6
/8
【sql語句刪除主鍵】
1)點擊sql server管理工具的菜單【新建查詢】,打開查詢窗口
2)在查詢窗口中輸入截圖的命令刪除主鍵
ALTER TABLE 表名 DROP CONSTRAINT [鍵名];
7
/8
【sql語句添加主鍵】
1)點擊sql server管理工具的菜單【新建查詢】,打開查詢窗口
2)在查詢窗口中輸入截圖的命令添加主鍵
ALTER TABLE 表名 ADD CONSTRAINT 鍵名 PRIMARY KEY ( 列名,多個列名用逗號分隔 );
3)添加主鍵之前,如果該表原來有主鍵,需要先刪除主鍵,再添加,就等同於修改主鍵了
8
/8
【sql語句修改主鍵】
1)點擊sql server管理工具的菜單【新建查詢】,打開查詢窗口
2)在查詢窗口中輸入截圖的命令修改主鍵
3)如果表存在主鍵,需要先刪除原主鍵。
⑹ 如何通過PL/SQL修改某一個表的結構(主鍵
方法/步驟
登錄PL/SQL Developer
找到要修改數據的表,右擊該表,選擇「編輯數據」
出現下圖這樣的窗口,注意方框中的信息。
小鎖此時打開了,說明可以編輯數據了,後面的加減號表示增加、刪除記錄。
最後一列的rowid不能修改,這是物理標識列。
修改了數據後,可以看到對號變成綠色了,此時要提交的話需要點擊這個對號。
點擊對號之後並沒有真正保存,還需要提交事務,這樣才算是真正修改了。
點擊對號之後,還要點擊提交事務按鈕。
彈出確認提示框,點擊是即可。
我們還可以在sql窗口中輸入『select t.*,t.rowid from表 t』,按執行鍵,然後再點擊那個鎖,即可開始修改表數據。
如果輸入的是『select t.* from 表 t』,這條語句和上面的那個語句查詢結果是相同的,但因為多查了個rowid,所以才能修改數據。
⑺ SQL怎樣用命令設置主鍵
我現在發現使用較少的語句也可以啦,比如:alter
tabler
badd
primary
key(id)將表b中的欄位id設為主鍵這個方法和你的視覺上的效果是一樣的,就是不曉得內部是否一樣的。
⑻ t sql 建好表後如何定義主鍵
tsql建好表後如何定義主鍵的方法。
如下參考:
1、打開管理工具,SQLServerManagementStudio連接到資料庫。
⑼ sql用命令創建主鍵與外鍵,怎麼操作
用命令創建主鍵與外鍵方法如下: