SQL Server
 Computer >> コンピューター >  >> プログラミング >> SQL Server

SQLServerの主キーPRIMARYKEY

SQL Serverで主キーを作成、削除、無効化、または有効化する方法を、構文と例を使用して学習します。

SQL Serverの主キーは何ですか?

SQL Server(Transact-SQL)では、主キーはフィールドまたはフィールドの組み合わせであり、単一のレコードとして定義されます。主キーのフィールドにNULL値が含まれていません。テーブルには主キーが1つだけあります。主キーは、CREATETABLEコマンドまたはALTERTABLEコマンドで定義できます。

主キーを作成します-CREATETABLEコマンドを使用します

主なキー生成構文はCREATETABLEコマンドを使用します

  CREATE TAB LE ten_bang 
(
cot1 kieu_du_lieu [ NULL | NOT NULL ] [ PRIMARY KEY ],
cot2 kieu_du_lieu [ NULL | NOT NULL ],
.
);

または

  CREATE TABLE ten_bang 
(
cot1 kieu_du_lieu [ NULL | NOT NULL ],
cot2 kieu_du_lieu [ NULL | NOT NULL ],

CONSTRAINT ten_rang_buoc PRIMARY KEY (cot1, cot2, … cot_n)
);

主キー生成の例はCREATETABLEコマンドを使用したものです

  CREATE TABLE nh anvien 
( nhanvien_id INT PRIMARY KEY,
ho VARCHAR(50) NOT NULL,
ten VARCHAR(50), NOT NULL,
luong MONEY
);

この例では、nhanvienテーブルの主キーはnhanvien_idというフィールドで構成されています。さらに、主キーは次のように作成できます。

  CREATE TABLE nhanvi en 
( nhanvien_id INT,
ho VARCHAR(50) NOT NULL,
ten VARCHAR(50), NOT NULL,
luong MONEY
CONSTRAINT nhanvien_pk PRIMARY KEY (nhanvien_id)
);

これは、SQLServerで複数のフィールドを持つ主キーを作成する例です。

  CREATE TABLE vn ien 
( ho VARCHAR(50) NOT NULL,
ten VARCHAR(50), NOT NULL,
luong MONEY
CONSTRAINT nhanvien_pk PRIMARY KEY (ho, ten)
);

この例では、2つの列で構成される主キーhoを作成しました。 およびten 。これらの2つのフィールドは、テーブル内のレコードを一意に識別します。

主キーを作成します-ALTERTABLEコマンドを使用します

主キーは、NOTNULLとして定義された列でALTERTABLEコマンドを使用してのみ作成できます。列でNULL値が許可されている場合、テーブルを削除または再作成せずに主キーを追加することはできません。

主キーを作成するための構文はALTERTABLEコマンドを使用します

  ALTER TABLE ten_ bang 
ADD CONSTRAINT t en_rang_buoc PRIMARY KEY (cot1, cot2, . cot_n);

ALTERTABLEコマンドを使用して主キーを作成する例

  ALTER T ABLE nhanvien 
ADD CON STRAINT nhanvien_pk PRIMARY KEY (nhanvien_id);

この例では、 nhanvien_id を含む、使用可能なテーブルの主キーを作成します。 フィールド nhanvien_id フィールドは前にNOTNULLとして定義する必要があります。そうでない場合は、テーブルを削除して再作成し、このフィールドをNOTNULLとして定義する必要があります。

次の例のように、複数のフィールドを持つ主キーを作成できます。

  ALTER TABLE staff 
ADD CONSTRAINT n hanvien_pk PRIMARY KEY (cough, ten);

テーブルの主キーには、名前と名前の2つのフィールドが含まれます。両方ともNOTNULLとして定義する必要があります。

SQLServerの主キーを削除する

主キーを削除するための構文はALTERTABLEコマンドを使用します

  ALTER TAB LE ten_bang 
DROP CONS TRAINT ten_rang_buoc;

ALTERTABLEコマンドを使用して主キーを削除する例

  ALTER TABLE staff 
DROP CONSTRAINT nhanvien_pk;

上記の例では、テーブルの主キーが削除されます。

SQLServerの主キーを無効にする

ALTERINDEXコマンドで主キーを無効にする構文

  ALTER IN DEX ten_rang_buoc ON ten_bang 
DISABLE;

たとえば、ALTERINDEXコマンドで主キーを無効にします

  ALTER INDEX nhanvien_pk ON nhanvien 
DISABLE ;

上記の例では、テーブルの主キーが無効になっています。

SQLServerで主キーをアクティブ化する

主キーをアクティブ化するための構文はALTERINDEXコマンドを使用します

  ALT ER INDEX ten_rang_buoc ON ten_bang 
REBU ILD;

たとえば、ALTERINDEXコマンドで主キーをアクティブにします

  ALTE R INDEX nhanvien_pk ON nhanvien 
REBUI LD;

上記の例では、テーブルの主キーが再度アクティブになります。


  1. SQLServerで外部キーをアクティブ化する

    SQLServerのFOREIGNKEY外部キーが無効になっている場合は、ALTERTABLEコマンドを使用して有効化/再有効化できます。 SQLServerで外部キーをアクティブ化するための構文 ALTER TABLE ten_bang CHECK CONSTRAINT fk_ten; 変数名または変数値 ten_bang 外部キーが作成されたテーブルの名前。 fk_ten 無効にする外部キーの名前。 例 CREATE T ABLE sanpham ( id_sanpham INT PRIMARY KEY, ten_sanpham VARCHAR(50) N

  2. MS SQL Serverとは何ですか?

    SQL Serverとは何ですか? RDBMSに基づいてMicrosoftが開発したソフトウェア。 また、ORDBMS(オブジェクトリレーショナルデータベース管理システム)。 独立したプラットフォーム。 ソフトウェアは、コマンドラインインターフェイスとGUIインターフェイスの両方を使用します。 SQL言語のサポート(以前のSEQUEL-構造化された英語のクエリ言語)-これはIBMの製品です。 SQLServerを使用する目的 データベースを作成します。 データベースを維持します。 SSASによるデータ分析-SQLServerAnalysisServices。 SSRSによるレポートの作