外部キーを使用してテーブルを作成する必要があります。SQL Server外部キーを使用してテーブルを作成するさまざまな方法
がCREATE TABLE books
(
book_id NVARCHAR(15) NOT NULL UNIQUE,
author_id INT REFERENCES authors(author_id)
...
);
しかし、大学から私の先生が私に外部キーを扱う別の方法を示す代表的なスクリプト送ら:これまでのところ私はこのようなことをやっているそれらの違いを見つけようとして
CREATE TABLE books
(
book_id NVARCHAR(15) NOT NULL UNIQUE,
author_id INT,
CONSTRAINT author_FK
FOREIGN KEY(author_id) REFERENCES authors(author_id)
...
);
を、私は研究をしました。残念ながら、私は答えを見つけることができます、私は(1秒と非常によく似ている)外部キーを持つテーブルを作成するための別の方法だった見つけたもの:
CREATE TABLE books
(
book_id NVARCHAR(15) NOT NULL UNIQUE,
author_id INT,
FOREIGN KEY(author_id) REFERENCES authors(author_id)
...
);
は、あなたがそれらのすべての違いを指摘してもらえますか?
2つ目のアプローチの利点の1つは、*あなたが**制約に名前を付けることです** - 後でドロップしたい場合は、** name ** **制約の**)。 *あなた自身の制約名を明示的に*指定しないと、FK制約はシステム指定の制約名を取得しますが、これは直感的ではありません。 –