Сценарий :
Вие работите като разработчик на SQL Sever, подготвяте скриптове за създаване на таблици в базата данни. Като част от тези скриптове трябва да създадете Check Constraints, но искате да следвате фирмените стандарти за именуване за Check Constraints. Как бихте добавили Check Constraint Name във вашите скриптове.Решение:
SQL Server автоматично дава име на Check Constraint, ако не го предоставим. Нека изпълним скрипта по-долу и да видим какво име SQL Server присвоява на Check Constraint, когато не предоставяме името. В примера по-долу създаваме Check Constraint за FName и се уверяваме, че приема само азбуки.--Create Table with Check Constraint use YourDatabaseName go Create table dbo.Customer ( FName VARCHAR(100) Not Null, LName VARCHAR(100), StreetAddress VARCHAR(255), Check (FName not like '%[^a-z]%') )
Можем да използваме системни изгледи, за да събираме информация, свързана с проверките на ограниченията.
--How to get Check Constraints in SQL Server SELECT * FROM INFORMATION_SCHEMA.Check_Constraints
Как да създадете ограничение за проверка в SQL Server с име по подразбиране |
Да приемем, че името на SQL Server, предоставено на Check Constraint, не е според стандартите на нашата компания. Нашите стандарти казват, че ограничението за проверка трябва да следва модела по-долу
Започнете с Chk_SchemaName_TableName_ColumnName_CheckConstraintDescription. За да добавите ограничение за проверка, вашият синтаксис ще бъде
Constraint Constraint_Name Check LogicForCheckConstraint.
--Create Table with Check Constraint use YourDatabaseName go Create table dbo.Customer ( FName VARCHAR(100) Not Null, LName VARCHAR(100), StreetAddress VARCHAR(255), Constraint Chk_dbo_Customer_FName_AlphabetsOnly Check (FName not like '%[^a-z]%') )
Изпълнете заявката за избор в системния изглед, за да получите информация за проверка на ограничението. Предлагам да създавате обекти с някаква конвенция за именуване или стандарти, вместо да оставяте sql сървъра да решава името за вашите обекти.
Как да създадете ограничение за проверка, като предоставите име според стандартите на вашата компания в SQL Server |
Видео демонстрация:Как да създадете ограничение за проверка чрез използване на конвенция за именуване в SQL Server