SQL Server2005で、複合キーを持つテーブルを作りたいです。


GUIツールの機能ではなく、SQL文で作りたいのですが、
どんなSQLを書いたらよいでしょうか。
できればCreate文の一文が良いですが、無理であればALTER文でもかまいせん。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/01/22 18:03:38
  • 終了:2013/01/22 18:54:44

ベストアンサー

id:windofjuly No.2

うぃんど回答回数2625ベストアンサー獲得回数11492013/01/22 18:25:52

ポイント90pt

単純な例 プライマリーキーにするカラムにはNOT NULL制約をつけましょう。

CREATE TABLE テーブル名 (
    カラムA INT NOT NULL,
    カラムB INT NOT NULL,
    カラムC varchar(255),
    PRIMARY KEY(カラムA,カラムB)
);
id:timestep

ありがとうございます。うまくできました。

2013/01/22 18:54:24

その他の回答(1件)

id:taknt No.1

きゃづみぃ回答回数13537ベストアンサー獲得回数11982013/01/22 18:09:25

ポイント10pt

http://uchukamen.com/SQL2008/Index/index.htm

CREATE UNIQUE CLUSTERED INDEX・・・・
って記述します。


ALTERは変更ですね。

他8件のコメントを見る
id:timestep

[dbo].[郵便番号]というのがテーブルだったんですね。
作りたいのはインデックスではなく、複合キーなのですが、
上記のCreateIndexで作られるのはインデックスでしょうか、複合キーでしょうか、両方作られるということでしょうか。

2013/01/23 11:56:31
id:taknt

項目を 複数記述すれば 複合キーでしょう。

っていうか インデックスって キーだよね?

2013/01/24 15:10:04
id:windofjuly No.2

うぃんど回答回数2625ベストアンサー獲得回数11492013/01/22 18:25:52ここでベストアンサー

ポイント90pt

単純な例 プライマリーキーにするカラムにはNOT NULL制約をつけましょう。

CREATE TABLE テーブル名 (
    カラムA INT NOT NULL,
    カラムB INT NOT NULL,
    カラムC varchar(255),
    PRIMARY KEY(カラムA,カラムB)
);
id:timestep

ありがとうございます。うまくできました。

2013/01/22 18:54:24

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません