dポイントプレゼントキャンペーン実施中!

お世話になります。

SQLについて質問があるのですが・・・。
Aというテーブルがあり、何件かデータが入っています。
そのAテーブルにフィールドを2つ新たに追加したいのです。

ALTER TABLEは使わずに、
以下の様な操作をしたいと考えております。
1:Aテーブルを違う名前に変更。
 もしくはテーブルを丸々コピー。
2:テーブルBを作成。
  (テーブルAのフィールドに2つフィールド追加した内容)
3:テーブルBにテーブルAの内容を丸々コピー。
  その際、新規に追加した2つのフィールドには、初期値として、何かの文字or数字を入れる。
4:Aテーブルを削除

と、いう感じです。

作成はINSERT、削除はDROPを使えばいいのかなーって
思っているのですが、
テーブル名の変更や、テーブルの内容のコピーが
ちょっと分かりません。

上記について、ご教授の程、よろしくお願いします。

なお、DBにはSQL Serverを使用しています。

A 回答 (1件)

>テーブル名の変更や、テーブルの内容のコピーが


ちょっと分かりません。

テーブル名の変更
sp_rename

http://www.microsoft.com/japan/msdn/library/defa …


テーブルの内容のコピー

insert into レコード追加先テーブル名
select
フィールド名1,
フィールド名2,



'A',
0
from 元テーブル名

#フィールドの順番はレコード追加先テーブルの順番にあわせること。対応しないフィールド(今回は追加したフィールド)に対しては、'A'や0のように、直接値を指定する。


>作成はINSERT、削除はDROPを使えばいいのかなーって

表の作成はCREATE TABLEです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

おかげさまで、やりたい動作ができました。

>表の作成はCREATE TABLEです。
あ、そうでしたね・・・。
何をぼけていたんだろう?って感じです。

どうもありがとうございました。

お礼日時:2004/06/06 21:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す