2006.08.22 Tuesday | 14:09

  SQLServer default 制約 記録

制約追加
( カラム追加時の制約設定では、制約名は自動作成 )

ALTER TABLE [テーブル名]
ADD CONSTRAINT [制約名]
DEFAULT 値 FOR [列名]


制約表示

SELECT 
	(select text from syscomments where id = sys2.id) as default_value
	,sys1.name,sys1.crdate,sys2.name
 from
   sysobjects as sys1 INNER JOIN sysobjects as sys2
 on sys1.id = sys2.parent_obj
 where
   sys1.xtype = 'U' and sys2.xtype = 'D' 
 order by
   sys1.name


制約削除

alter table [テーブル名]
drop constraint [制約名]


指定できる値

1) 定数値、
2) 関数、
3) SQL-92 ニラディック関数
4) NULL

↓ニラディック関数
CURRENT_TIMESTAMP 現在の日付と時刻
CURRENT_USER 挿入を実行しているユーザーの名前
SESSION_USER 挿入を実行しているユーザーの名前
SYSTEM_USER 挿入を実行しているユーザーの名前
USER 挿入を実行しているユーザーの名前

CURRENT_TIMESTAMP は getdate() と同じ