2628: String or binary data would be truncated in table, column ...; truncated value (données tronquées dans la table, la colonne ... ; valeur tronquée)
SQL ServerQue signifie cette erreur ?
La version améliorée de 8152 (SQL Server 2019 et versions ultérieures). Elle indique explicitement quelle table, quelle colonne et quelle valeur seraient tronquées.
Cause
Écriture d'une valeur texte/binaire plus longue que la longueur définie de la colonne cible. Généralement une incohérence de schéma ou des données d'entrée de longueur inattendue.
Comment la corriger
Consultez le nom de la table et de la colonne dans le texte de l'erreur ; élargissez la colonne ou raccourcissez la valeur source. Dans SQL Server 2019, 2628 n'est levée par défaut qu'au niveau de compatibilité 150+ ; aux niveaux inférieurs, activez-la avec ALTER DATABASE SCOPED CONFIGURATION SET VERBOSE_TRUNCATION_WARNINGS = ON ou le trace flag 460. À partir de SQL Server 2016 SP2 CU6 et 2017 CU12, le trace flag 460 donne le même message détaillé. Alignez les longueurs des champs sur la cible dans la couche de transfert.
Autres entrées pour ce moteur
- 547The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint (instruction en conflit avec une contrainte FOREIGN KEY / CHECK)
- 18456Login failed for user (échec de connexion pour l'utilisateur)
- 8152String or binary data would be truncated (les données chaîne ou binaires seraient tronquées)
- 1222Lock request time out period exceeded (délai de la demande de verrou dépassé)
- 9002The transaction log for database is full due to ... (le journal des transactions de la base est plein)
- 1105Could not allocate space for object in database because the filegroup is full (allocation d'espace impossible : groupe de fichiers plein)
- 208Invalid object name (nom d'objet invalide)