- 列を任意の位置に挿入することはできない。
- テーブルの削除→再作成を、一連のクエリで実行してはいけない。
- バックアップ→DROP TABLE→CREATE TABLE→バックアップ復元、の手順は、ロックがかかってしまい、実行できなかった。
- SQL Serverの場合は「末尾に追加する」が最適解っぽい。
ALTER TABLE [DB名].[dbo].[テーブル名] ADD COLUMN 列名 型名(長さ);
ALTER TABLE [DB名].[dbo].[テーブル名] ALTER COLUMN 列名 型名(長さ);
コメントを付ける場合
EXEC sys.sp_addextendedproperty
@name=N'MS_Description'
,@value=N'テーブルコメント'
,@level0type=N'SCHEMA'
,@level0name=N'dbo'
,@level1type=N'TABLE'
,@level1name=N'テーブル名'
;
EXEC sys.sp_addextendedproperty
@name=N'MS_Description'
,@value=N'カラムコメント'
,@level0type=N'SCHEMA'
,@level0name=N'dbo'
,@level1type=N'TABLE'
,@level1name=N'テーブル名'
,@level2type=N'COLUMN'
,@level2name=N'カラム名'
;
ALTER TABLE (Transact-SQL) - SQL Server
ALTER TABLE では、列と制約を変更、追加、または削除して、テーブルの定義を変更します。 また、ALTER TABLE では、パーティションを再割り当ておよび再構築したり、制約とトリガーを無効化および有効化したりもします。
テーブル作成後の定義変更のSQL | DB & SQL 技術ブログ
コメント