Regex für MsSQL-Check-Einschränkung

Ich versuche, eine Spalte Ebene überprüfen Einschränkung auf einen Tisch, den ich habe. Ich möchte, dass Werte in die Spalten eingefügt werden, um überprüft zu werden und sicherzustellen, dass sie nur Charakter sind.

Zum Beispiel würden values ('hello','there') passieren, aber values ('h3llo','th3r3') würde nicht.

Ich kann es für eine bestimmte Anzahl von Charakteren zu arbeiten (siehe Tabelle unten), aber ich möchte es dynamisch machen.

Ich habe auch ^[a-zA-Z]+$ versucht, aber das scheint auch nicht zu arbeiten.

Das einfache Tabellenlayout ist unten.

 CREATE TABLE owner ( owner_id ID IDENTITY(1, 1) PRIMARY KEY, owner_firstname FIRSTNAME, owner_lastname LASTNAME, CONSTRAINT firstname_cc CHECK (owner_firstname LIKE '[a-zA-Z][a-zA-Z][a-zA-Z]'), CONSTRAINT lastname_cc CHECK (owner_lastname LIKE '[a-zA-Z][a-zA-Z][a-zA-Z]') ); 

SQL server LIKE Syntax akzeptiert keine regulären Ausdrücke.

Sie können check (owner_firstname not like '%[^AZ]%') .

Diese Einschränkung lehnt jeden Wert ab, der ein character enthält, das nicht im Bereich AZ .

Sie müssen nicht auch az angeben, außer wenn Sie auf einer Fall-sensitiven sorting sind.