Formatage des nombres à l'aide de la concaténation dans T-SQL
Ce problème se produit lorsque vous tentez de concaténer des nombres et des chaînes pour formater des nombres dans T-SQL. La fonction fournie, ActualWeightDIMS, vise à concaténer ActualWeight et Actual_Dims_Lenght, Actual_Dims_Width et Actual_Dims_Height pour produire un chaîne formatée. Cependant, lors de l'appel de cette fonction dans une instruction select, une erreur est rencontrée en raison d'une erreur de conversion implicite lors de la concaténation.
Pour résoudre cette erreur, il est nécessaire de convertir explicitement les paramètres entiers en VARCHAR avant de les concaténer. Cela empêche T-SQL de tenter d'effectuer une opération d'addition entre un nombre et une chaîne. La partie modifiée suivante de la fonction résout ce problème :
SET @ActualWeightDIMS = CAST(@Actual_Dims_Lenght AS VARCHAR(16)) + 'x' + CAST(@Actual_Dims_Width AS VARCHAR(16)) + 'x' + CAST(@Actual_Dims_Height AS VARCHAR(16))
En convertissant explicitement les paramètres entiers en VARCHAR, SQL Server interprète la concaténation comme une concaténation de chaîne, ce qui donne la sortie de chaîne formatée souhaitée. De plus, des alias de table pourraient être ajoutés à l'instruction select dans la question pour améliorer la lisibilité et la maintenabilité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!