/ / table - sql、sql-server-2005、foreign-keys、primary-keyに複合主キーを追加する方法

複合主キーをtable-sql、sql-server-2005、外部キー、主キーに追加する方法

create table d(id numeric(1), code varchar(2))

上記の表を作成したら、両方のフィールドと外部キーに複合主キーを追加する方法はありますか?

回答:

回答№1の場合は25

Oracleでは、これを行うことができます:

create table D (
ID numeric(1),
CODE varchar(2),
constraint PK_D primary key (ID, CODE)
);

回答№2 29

alter table d add constraint pkc_Name primary key (id, code)

それを行う必要があります。どのDBを使用しているかによって、基本的な主キー/索引にはたくさんのオプションがあります。


回答№3の6

ALTER TABLE Chrisが提示したステートメントは機能しますが、最初に列を宣言する必要があります NOT NULL。主キーのすべての部分が必要です NOT NULL.


回答№4の4

最初にテーブルを作成し、その後のステップでキーを追加する必要はありません。テーブルの作成中に主キーと外部キーの両方を追加できます:

この例では、テーブルの存在を前提としています(Codes私たちの外部キーで参照したいと思っています。

CREATE TABLE d (
id [numeric](1),
code [varchar](2),
PRIMARY KEY (id, code),
CONSTRAINT fk_d_codes FOREIGN KEY (code) REFERENCES Codes (code)
)

参照可能なテーブルがない場合は、このようにテーブルを追加して、この例が機能するようにします。

CREATE TABLE Codes (
Code [varchar](2) PRIMARY KEY
)

注意: 外部キーを作成する前に、参照するテーブルが必要です。


回答№5の2

SQL Server Management Studio Designerを使用している場合は、両方の行(Shift +クリック)とSet Primary Keyを選択するだけです。

ここに画像の説明を入力