2011-07-15 8 views
1

新しい列をテーブルに追加する必要があり、新しい列の値は既存の列と同じにする必要があります。これを行う簡単な方法はありますか?テーブルにはそのような値はありませんので、必要に応じて手動で行うこともできますが、より良い方法が必要です。既存の列と同じ値を持つ新しい列を追加する方法

+0

テーブルのDDLと追加する列を共有できますか? – Chandu

答えて

1

私が唯一の問題はNON NULL列である

ALTER TABLE MyTable 
ADD NewColumn int 

UPDATE MyTable SET NewColumn = OldColumn 

を行うだろう。デフォルト値を指定し、デフォルト値の制約を更新してから削除する必要があります。

2

最初にSQL Serverを使用している場合は、管理スタジオを使用してALTER Tableコマンドを追加または発行することができます。

ALTER Table MyTable ADD NewColumn varchar(25)

変更すると、簡単な更新ルーチンは、更新を実行する必要があり、あなたの古い列MyOldCol

のタイプと一致するタイプvarchar(25)

UPDATE MyTable SET MyNewCol = MyOldCol

は値MyTableを更新し、 MyNewColMyOldColがあなたのものです。

+1

データ型が互換性がある場合は明らかです。 – Jacob

+1

@cularis - 同じデータが列に含まれていると仮定しますが、新しい列のデータ型が同じである必要がありますか? – JonH

+0

あなたは決して知らない。 ;) – Jacob

関連する問題