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

SQL Serverで外部キー制約を削除する方法【構文と実例付き】

この記事では、構文と具体例を交えながら、SQL Serverで外部キー(FOREIGN KEY)を削除する方法をわかりやすく解説します。

FOREIGN KEYを作成したものの、その外部キーが不要になり削除したい場合は、SQL Server(Transact-SQL)のALTER TABLEコマンドを使用することで簡単に削除できます。

SQL Serverで外部キーを削除する構文

ALTER TABLE ten_bang
DROP CONSTRAINT fk_ten;

パラメータの説明

ten_bang

外部キーが設定されているテーブルの名前です。

fk_ten

削除したい外部キーの名前です。

実際の使用例

まず、親テーブルと子テーブルを作成してみましょう。

CREATE TABLE sanpham
( id_sanpham INT PRIMARY KEY,
  ten_sanpham VARCHAR(50) NOT NULL,
  phan_loai VARCHAR(25)
);
CREATE TABLE hangtonkho
( id_hangtonkho INT PRIMARY KEY,
  id_sanpham INT NOT NULL,
  soluong INT,
  luong_toithieu INT,
  luong_toida INT,
  CONSTRAINT fk_htk_id_sanpham
  FOREIGN KEY (id_sanpham)
  REFERENCES sanpham (id_sanpham)
);

この例では、主キーとしてid_sanphamフィールドを持つ親テーブル「sanpham」を作成しています。続いて、子テーブル「hangtonkho」に対して外部キー制約を設定します。CREATE TABLEステートメントによって、hangtonkhoテーブルに「fk_htk_id_sanpham」という名前の外部キーが作成されます。この外部キーにより、hangtonkhoテーブルのid_sanpham列とsanphamテーブルのid_sanpham列との間に関連性が形成されます。

関連記事

  1. SQL Serverで外部キーを有効化する方法
  2. SQL Serverの外部キー(Set Null)とは
  3. SQL Serverの外部キー(Cascade Delete)とは

ここで、外部キー「fk_htk_id_sanpham」を削除したい場合は、以下のコマンドを実行します。

ALTER TABLE hangtonkho
DROP CONSTRAINT fk_htk_id_sanpham;

上記のALTER TABLEステートメントを実行すると、hangtonkhoテーブルから「fk_htk_id_sanpham」という名前の制約が削除されます。

前回の記事:SQL Serverの外部キー(Set Null)とは
次回の記事:SQL Serverで外部キーを無効化する方法

今回も最後までお読みいただきありがとうございました。「SQL Serverで外部キーを削除する方法」に関するこの記事が、皆様のお役に立てたのであれば幸いです。当サイトでは、データベースやプログラミングに関するヒントやガイド記事を多数掲載していますので、ぜひ他の記事もご覧ください。今後ともどうぞよろしくお願いいたします。

執筆者:Micah Soto
更新日:2019年5月25日

  1. MS SQL Serverでユーザーを作成する方法【T-SQL・SSMS両対応】

    ここでいうユーザーとは、MS SQL Server上でデータベースへアクセスするためのアカウントのことを指します。 ユーザーは、以下の2つの方法のいずれかで作成できます。 方法1:T-SQLを使用する MS SQL Serverでユーザーを作成する際の基本構文は以下の通りです。 Create user <ユーザー名> for login <ログイン名> 実行例 TestDB データベースに、ログイン名 TestLogin に関連付けた TestUser というユーザーを作成するには、次のクエリを実行します。 create user TestUser for login

  2. SQL Server Management Studio(SSMS)18.7の新機能解説:Azure Data Studio自動インストールなど主要変更点

    SQL Server Management Studio(SSMS)18.7は、2020年にリリースされた3つ目のメジャーリリースであり、データベース管理のための高品質なツールを提供するというコミットメントをさらに強化するものです。本記事では、18.7における主な変更点について詳しく解説します。 Azure Data Studioとの同梱インストール SQL Server Management Studioは、Microsoftのデータソリューションに携わる多くの方にとって欠かせないツールです。2018年に初めてリリースされたAzure Data Studioは、データ専門家向けに設計されたオ