nvarchar должен содержать только английские или грузинские буквы - PullRequest
0 голосов
/ 26 июня 2019

Мое ограничение: (datalength([Firstname])>=(2) AND datalength([Firstname])<=(50) AND (NOT [Firstname] like '%[^a-zA-Z]%' AND NOT [Firstname] like N'%[^ა-ზ]%'))

Добавление имени с грузинскими буквами приводит к ошибке: enter image description here

Что не так?

1 Ответ

0 голосов
/ 27 июня 2019

Я ничего не знаю о грузинских именах, но, возможно, ваш выбор первых и последних букв не подходит для вашего сопоставления.Возможно, лучшая идея - просто перечислить все разрешенные символы.Вместо:

N'%[^ა-ზ]%'

Возможно, что-то вроде этого:

 N'%[^ႠႡႢႣႤႥႦႧႨႩႪႫႬႭႮႯႰႱႲႳႴႵႶႷႸႹႺ'
+N'ႻႼႽႾႿჀჁჂჃჄჅჇჍაბგდევზთიკლმნოპჟრს'
+N'ტუფქღყშჩცძწჭხჯჰჱჲჳჴჵჶჷჸჹჺჼჽჾჿⴀⴁⴂⴃⴄⴅ'
+N'ⴆⴇⴈⴉⴊⴋⴌⴍⴎⴏⴐⴑⴒⴓⴔⴕⴖⴗⴘⴙⴚⴛⴜⴝⴞⴟⴠⴡⴢ'
+N'ⴣⴤⴥⴧⴭ]%'

Кроме этого, убедитесь, что все ваши логические операторы, AND, NOT иOR - соответствующие.

Вы можете подумать, подходит ли это ограничение для ваших нужд.Имена людей могут быть более разнообразными, чем вы думаете.Google "Falsehoods Programmers Believe About Names"

...