• ベストアンサー

SQLServer2000:テーブルの先頭に列を追加したい

いつもお世話になっております SQLServer2000を使用しております。 あるテーブルに a,b,c,dという4つの項目が存在している状態で aの前にzというフィールドを追加したいと考えております。 Enterprise Managerを使えば簡単に行うことが出来ますが、 これをクエリアナライザで行いたい場合に どのようにSQL文を記述すればよいのか、見つけることが出来ませんでした。 このようなことは可能なのでしょうか。 ご存知の方がいらっしゃいましたら、ご教示のほど、何卒よろしくお願いいたします。

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

  • ベストアンサー
  • nov-d
  • ベストアンサー率36% (51/140)
回答No.1

アナログなやり方で恐縮ですが。。。(^_^; 1.「ALTER TABLE ADD...」で列追加 2.ターゲットとなるテーブルに関する外部参照制約を全てDisableに 3.INSERT INTO (新テーブル名) SELECT (望む順の列名) FROM (旧テーブル名); 4.Drop Table (旧テーブル名); 5.ALTER TABLE (新テーブル名) RENAME TO (旧テーブル名); 6.制約を再作成 あまり自信がありませんが、こんな具合でいけませんかね・・・。 #エリアナライザ的な書き方でなく、重ねて恐縮です。

o_w_nakazaki
質問者

お礼

早々のご返答を頂き、ありがとうございます。 手順は異なりますが、 同様の方法で対応することが出来ました。 本当に助かりました。ありがとうございました