Convertir efficacement VARCHAR en Unique Identificateur dans SQL Server pour les applications .NET
Dans les bases de données SQL Server, vous pouvez rencontrer une colonne VARCHAR, stockant des identificateurs uniques dans un format spécifique (par exemple, 'A89B1ACD95016AE6B9C8AABB07DA2010'). La conversion directe au type de données UNIQUEIDENTIFIER
en utilisant CAST
ou CONVERT
échoue souvent. Cet article présente une solution robuste pour cette conversion, permettant une intégration transparente avec les applications .NET.
Voici une requête SQL qui gère efficacement cette conversion:
DECLARE @uuid VARCHAR(50) SET @uuid = 'a89b1acd95016ae6b9c8aabb07da2010' SELECT CAST( SUBSTRING(@uuid, 1, 8) + '-' + SUBSTRING(@uuid, 9, 4) + '-' + SUBSTRING(@uuid, 13, 4) + '-' + SUBSTRING(@uuid, 17, 4) + '-' + SUBSTRING(@uuid, 21, 12) AS UNIQUEIDENTIFIER)
Explication:
Déclaration de variable: Une variable VARCHAR @uuid
est déclarée et attribuée à la chaîne d'identificateur unique non hyphéné.
Manipulation de la chaîne: La fonction SUBSTRING
extrait des parties spécifiques de la chaîne, correspondant aux sections d'un format standard UUID (identifiant universellement unique): xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
. Ces sous-chaînes sont ensuite concaténées à l'aide de l'opérateur '' pour reconstruire la chaîne UUID formatée correctement.
Conversion du type de données: Enfin, la fonction CAST
convertit la chaîne formatée résultante en un type de données UNIQUEIDENTIFIER
.
Cette méthode garantit une conversion précise des colonnes VARCHAR contenant des identificateurs uniques dans le format spécifié par leurs valeurs UNIQUEIDENTIFIER
équivalentes, facilitant le traitement de données lisse dans vos applications .NET.
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!