LIKE
正規表現 CHECK 制約を使用して列のデータを検証する方法を見つけようとしていますが、これまでのところ、正規表現構文のサブセットが非常に限られているキーワードにしか遭遇していません。チェック制約で正規表現を使用する方法があるかどうか知りたいですか?
SQL Server 2005 および 2008 を使用しています。
LIKE
正規表現 CHECK 制約を使用して列のデータを検証する方法を見つけようとしていますが、これまでのところ、正規表現構文のサブセットが非常に限られているキーワードにしか遭遇していません。チェック制約で正規表現を使用する方法があるかどうか知りたいですか?
SQL Server 2005 および 2008 を使用しています。
.Net フレームワークの RegEx クラスを使用できる CLR スカラー UDF を作成し、それをチェック制約から呼び出すことができると思います。
実際、この記事ではこのシナリオについて説明しています (「Check Constraint」を検索し、記事をさかのぼって実装の詳細を確認してください)。
私はここのスレッドに少し遅れていますが、これを行う方法についての私の記事をチェックしてください:
http://xmlsqlninja.blogspot.com/2013/09/mdqregex-clr-functions-part-3-regex.html