Maison > base de données > tutoriel mysql > Comment convertir en toute sécurité NVARCHAR en INT avec une valeur par défaut dans T-SQL ?

Comment convertir en toute sécurité NVARCHAR en INT avec une valeur par défaut dans T-SQL ?

Patricia Arquette
Libérer: 2024-12-28 08:56:11
original
358 Les gens l'ont consulté

How to Safely Cast NVARCHAR to INT with a Default Value in T-SQL?

Conversion de Nvarchar en entier avec une valeur par défaut dans T-SQL

Dans SQL Server, le défi se pose lorsque l'on tente de convertir des données nvarchar non numériques en nombres entiers. Pour gérer efficacement de tels scénarios, il est essentiel de spécifier une valeur par défaut ou NULL à renvoyer en cas d'échec de la conversion.

Heureusement, T-SQL propose une solution à ce problème en utilisant une combinaison de CAST et Déclarations CASE. Explorons comment cela fonctionne :

DECLARE @text AS NVARCHAR(10)
Copier après la connexion

Cette ligne déclare une variable nommée "@text" d'une longueur maximale de 10 caractères, nous permettant de stocker des données nvarchar.

SET @text = '100'
Copier après la connexion

Suivant , la variable "@text" reçoit la valeur "100", qui est une représentation entière valide.

SELECT CASE WHEN ISNUMERIC(@text) = 1 THEN CAST(@text AS INT) ELSE NULL END
Copier après la connexion

Cette ligne utilise l'instruction CASE pour évaluer si la valeur de "@text" est numérique ou non. Si elle renvoie 1 (Vrai), la fonction CAST convertit "@text" en entier. Si ce n'est pas numérique, l'instruction renvoie NULL.

La fonction ISNUMERIC joue un rôle crucial dans ce processus. Cependant, il convient de noter les limitations mentionnées par Fedor Hajdu, comme sa possibilité de traiter les chaînes contenant des symboles ($) ou des séparateurs (.) comme des valeurs numériques. Il s'agit d'une considération cruciale lorsque vous travaillez avec des types de données spécifiques.

En conclusion, l'utilisation de l'instruction CASE, en conjonction avec CAST et ISNUMERIC, permet aux développeurs de convertir sans effort les données nvarchar en nombres entiers tout en gérant les échecs de conversion potentiels, garantissant ainsi l'intégrité et l'exactitude de leurs résultats dans T-SQL.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal