2009-08-19 6 views
1

Je voudrais créer une contrainte de vérification pour une table dans SQL 2008 qui autoriserait les caractères A-Z (non sensibles à la casse), les nombres, trait d'union (-), point (.), Espace et trait de soulignement (_). Ci-dessous est mon expression actuelle: ([company_code] pas comme '% [^ A-Za-z0-9_. +]%').Comment faire pour SQL Server 2008 Check Contrainte d'une table Autoriser uniquement Certains caractères?

Il répond à toutes les exigences ci-dessus à l'exception du trait d'union. Comment pourrais-je faire l'expression permettant le trait d'union aussi bien?

Répondre

3

Vous pouvez utiliser une clause ESCAPE:

not like '%[^A-Za-z0-9_ .+\-]%' escape '\' 

Le caractère après le caractère d'échappement sera littéralement adapté.

Questions connexes