L'insertion de Char de la valeur dans la table SQL
J'ai créé une table SQL un système de vérification de contraintes sur elle, mais maintenant, quand j'essaie d'insérer les données que je reçois un message d'erreur.
create table BranchTel
(
BrRegNo varchar(10) REFERENCES Branch(BrRegNo),
TelNo char(12)
PRIMARY KEY(BrRegNo)
)
ALTER TABLE BranchTel Add Constraint BranchTelTelNo
Check(TelNo LIKE '[0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
Instruction Insert
insert into BranchTel values('BG-205','940112571963')
Message d'erreur
L'instruction INSERT en conflit avec la contrainte CHECK "BranchTelTelNo". Le conflit est survenu dans la base de données "StudentDetails", table "dbo.BranchTel", la colonne "TelNo'.
La déclaration a été résilié.
Instruction Insert
insérez dans BranchTel values('BG-205','94-011-2571963')
Message d'erreur
String ou des données binaires d'être tronquée.
La déclaration a été résilié.
S'il vous plaît aider moi
Vous devez vous connecter pour publier un commentaire.
Votre vérification de la contrainte est de 14 caractères de long (il faut compter le
-
ainsi), alors que le champ est de 12.En outre,
940112571963
n'est pas conforme au modèlexx-xxx-xxxxxxx
vous avez définies dans votre vérification de la contrainte.Vous avez besoin de changer la taille du champ à 14 et lors de l'insertion assurez-vous que les tirets sont à la bonne place:
Ici la valeur
94-011-2571963
longueur est supérieure à 12 qui, évidemment, viole la contrainte de vérification.