• ベストアンサー

テーブル作成後なんですが、Primary Keyをスクリプトで追加したい

Windows2000でSQLServerを使用しています。 テーブルは作成したのですが、後からある項目にPrimary Key を エンタープライズマネージャを使用せず、スクリプトで追加したいのですが、 構文がわかりません。 どなたか教えていただけませんでしょうか。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • noopee
  • ベストアンサー率38% (114/297)
回答No.2

あけましておめでとうございます。 遅くなりましたが再度。 現在、自由にいじれるSQLServerの環境がないので、動作確認はしてないのですが、ちょこっと調べた感じだと、補足の内容はできないようです。 一度DropしてからAddしないとダメ、のようなこと書いてありました。 もしかしたら調べ方が悪いのかも、ですがあまり可能性はなさそうです。 お力になれなくてすみません。

参考URL:
http://www.users.gr.jp/

その他の回答 (1)

  • noopee
  • ベストアンサー率38% (114/297)
回答No.1

こんばんは。 Alter Table tablename(テーブル名) Add Constraint constraint_definition(制約定義) のような感じ。 「Constraint」を使用して、プライマリキー制約を追加します。 すでにあるデータ行に設定したいときは、その内容がチェックされてNULLや重複行があればエラーが返ります。 すでに設定済みの場合もエラーが返ってきます。

question
質問者

補足

noopeeさん。早々のお答えありがとうございます!! すみません。色々しましたかどーーしても上手くいかないので補足します。 T_TEMP(テーブル名) KomokuA(Primary Key) KomokuB(Primary Key) KomokuC KomokuD ←これにPrimaryKeyを追加したい。 ↑仮にこんな状態のテーブルです。 Alter Table T_TEMP Add Constraint KomokuD Primary Key のようなことをすると、「既にそのテーブルで定義された主キーを持っています。」とか制約が・・とか2行ほど言われてしまいます。 ためしにテーブルのPrimaryKeyを全て外して、複数PrimaryKeyを指定したら 上手く動いたんですけど・・。 もしよろしければ具体的に教えていただけませんでしょうか? よろしくお願いします。

関連するQ&A