Normally Varchar , Nvarchar ,
Char these data types in sql server it allows character data and numeric data
also ,but in some cases we don't want allow numeric data in some columns at
this time we use patindex function with check constraint at time creating table
or altering column in sql server.
Step-1:
Creating Student table with patindex function.
CREATE TABLE Student
(
Id INT IDENTITY(1,1) PRIMARY KEY,
StudentName VARCHAR(100) NOT NULL ,
LivingLocation VARCHAR(100) NULL,constraint chk_studentname
Check (PATINDEX('%[0-9]%', StudentName)=0)
)
GO;
Step-2:
Insert Some Sample Data.
INSERT INTO Student
SELECT 'Raki','Hyderabad'
GO;
The above query executed
successfully.
INSERT INTO Student
SELECT 'Raki123','Hyderabad'
GO;
The above query not executed
successfully,because numeric data existed in StudentName 'Raki123'.
Msg 547, Level 16, State 0,
Line 1
The INSERT statement
conflicted with the CHECK constraint "chk_studentname". The conflict
occurred in database "blog", table "dbo.Student", column
'StudentName'.
The statement has been
terminated.
Comments
Post a Comment