Introduction aux fonctions SQL Server natives JSON_VALUE, JSON_QUERY et JSON_MODIFY pour gérer le format JSON.
Dans le monde de la gestion des données et de l’informatique, y compris SQL Server, l’utilisation de JSON (JavaScript Object Notation) est devenue de plus en plus populaire en raison de son format d’échange de données léger. En conséquence, SQL Server a incorporé un ensemble de fonctions JSON de SQL Server dans T-SQL pour gérer les données JSON. Ce tutoriel vous guidera sur l’utilisation de ces fonctions, en commençant par les bases et en passant progressivement à des exemples plus complexes.
Table of Contents
1. Comprendre le format de données JSON dans SQL Server
Avant de plonger dans les fonctions MS SQL JSON, il est crucial de comprendre ce qu’est une donnée JSON. Les données JSON sont un format de texte complètement indépendant de la langue, mais utilisent des conventions familières aux programmeurs de la famille des langages C. Dans SQL, JSON est stocké sous le type NVARCHAR. Voici comment créer une table avec des données JSON:
CREATE TABLE Employees ( ID INT IDENTITY(1,1), Info NVARCHAR(4000) ) INSERT INTO Employees (Info) VALUES ('{"Name": "John", "Age": 25, "Department": "Sales"}'), ('{"Name": "Jane", "Age": 30, "Department": "Marketing"}')
2. La fonction JSON_VALUE dans SQL Server
En ce qui concerne les fonctions JSON de Transact-SQL, l’une des fonctions principales qui se démarque est JSON_VALUE. Conçue avec un objectif simple, la fonction JSON_VALUE sert le rôle spécifique d’extraire des valeurs scalaires à partir d’une chaîne JSON complète. Les valeurs scalaires, dans ce contexte, font référence à des points de données uniques et non répétés dans la structure JSON, tels que les entiers, les booléens ou les chaînes
La première fonction à explorer dans les fonctions JSON de Transact-SQL est JSON_VALUE. Cette fonction extrait une valeur scalaire d’une chaîne JSON. Voici un exemple simple avec une requête qui renverra simplement les noms des employés à partir des données JSON.
SELECT JSON_VALUE(Info, '$.Name') AS EmployeeName FROM Employees
3. Travailler avec JSON_QUERY dans MS SQL
JSON_QUERY est une autre fonction de l’ensemble des fonctions JSON de SQL Server. Contrairement à JSON_VALUE, JSON_QUERY extrait un objet ou un tableau d’une chaîne JSON. Voici ci-dessous un exemple basique sur comment l’utiliser. Cette requête renverra les données JSON complètes pour chaque employé.
SELECT JSON_QUERY(Info, '$') AS EmployeeInfo FROM Employees
4. Explorer la fonction ISJSON dans T-SQL
Dans la suite des fonctions JSON de T-SQL, ISJSON se présente comme un outil pratique. Son rôle principal est de vérifier la validité d’une chaîne en tant que format JSON correct. Lorsqu’il est présenté avec une chaîne, ISJSON renverra une valeur de 1 si la chaîne est conforme à la norme JSON et 0 si ce n’est pas le cas.
Pour mieux comprendre son application, considérez le scénario suivant: une base de données contient une table appelée Employees et dans cette table, il y a une colonne appelée Info. Chaque entrée dans la colonne Info est censée être au format JSON. S’il y a un besoin de valider ces données, la fonction ISJSON peut être utilisée.
SELECT ISJSON(Info) AS IsJson FROM Employees
Un résultat de 1 indiquerait que le champ ‘Info’ correspondant contient une chaîne JSON valide. Si la base de données est bien entretenue et cohérente, nous pouvons anticiper de voir un 1 pour chaque enregistrement, signifiant que toutes les entrées ‘Info’ sont du JSON valide.
5. Utiliser la fonction SQL Server JSON_MODIFY
La fonction JSON_MODIFY dans les fonctions JSON de SQL Server permet de modifier une valeur dans une chaîne JSON. Cette requête mettra à jour l’âge de John à 26 dans les données JSON.
UPDATE Employees SET Info = JSON_MODIFY(Info, '$.Age', 26) WHERE JSON_VALUE(Info, '$.Name') = 'John'
Conclusion sur les fonctions JSON de SQL Server
En conclusion, SQL Server fournit un ensemble robuste de fonctions JSON pour travailler avec des données JSON. Ces fonctions offrent un moyen transparent d’intégrer la gestion des données JSON dans vos opérations SQL. Que vous extrayiez des valeurs, modifiiez des données ou validiez des chaînes JSON, ces fonctions facilitent et rendent le processus plus efficace. En maîtrisant ces fonctions JSON de SQL Server, vous pourrez gérer les données JSON avec facilité et efficacité dans votre base de données SQL Server.
Bien sûr, SQL Server, comme Python, permet également aux utilisateurs de gérer les types de données XML en utilisant des fonctions T-SQL natives.
Pour aller encore plus loin sur MS SQL et le format JSON, consulter la documentation officielle de Microsoft sur les fonctions JSON. Une autre excellente ressource est ce tutoriel W3Schools sur SQL et JSON.
Soyez le premier à commenter