Élever la productivité des développeurs avec des outils et des services intégrés

Effectué

SQL Server 2025 fournit des fonctionnalités et des outils permettant aux développeurs d’utiliser des données, des événements et des API. Cette unité couvre les fonctionnalités de développement dans SQL Server 2025.

Implémenter des fonctionnalités d’enrichissement des données

SQL Server 2025 améliore considérablement les fonctionnalités d’enrichissement des données avec plusieurs fonctionnalités clés :

Utiliser json natif

SQL Server 2025 offre une prise en charge JSON native améliorée, ce qui vous permet de stocker, d’interroger et de manipuler json directement dans T-SQL. De nouvelles fonctions telles JSON_OBJECT que et JSON_VALUE simplifient l’utilisation de données semi-structurées, tandis que l’indexation améliorée améliore les performances des requêtes JSON. Cela facilite la fusion des données relationnelles et hiérarchiques pour les applications modernes.

La prise en charge json dans SQL Server vous permet de stocker et d’utiliser des données JSON en mode natif.

  • Traiter des documents JSON directement dans SQL Server
  • Interroger et mettre à jour JSON à l’aide de T-SQL
  • Indexer les propriétés JSON pour accélérer les performances
  • Valider JSON au niveau de la base de données
  • Utiliser le type de données JSON pour imposer une stricte correspondance des types

L’exemple suivant montre comment SQL Server 2025 utilise le nouveau type de données JSON avec la validation automatique et la notation par points, ce qui vous permet de stocker JSON dans une colonne et des propriétés de requête telles que le nom et le prix directement dans T-SQL sans fonctions supplémentaires.

-- Create a table with a JSON column
CREATE TABLE Products (
    ProductId int PRIMARY KEY,
    ProductData JSON
);

-- Insert valid JSON data with automatic validation
INSERT INTO Products (ProductId, ProductData)
VALUES (1, '{"name": "Widget", "price": 19.99, "features": ["durable", "lightweight"]}');

-- Query JSON properties using dot notation
SELECT 
    ProductId,
    ProductData.name,
    ProductData.price
FROM Products;

Conseil / Astuce

Utilisez la ISJSON() fonction pour valider les données JSON avant de les stocker dans la base de données.

Intégrer des API REST

SQL Server 2025 introduit la prise en charge intégrée de l’API REST, ce qui permet une interaction directe avec des objets de base de données via HTTP sans intergiciel supplémentaire. Les développeurs peuvent exposer des tables, des vues et des procédures stockées en tant que points de terminaison RESTful, ce qui facilite l’intégration de SQL Server à des applications web et mobiles modernes. La fonctionnalité prend en charge l’authentification sécurisée, les charges utiles JSON pour l’entrée et la sortie, ainsi que le contrôle précis sur les opérations exposées. Cela simplifie la création de services légers et de microservices qui utilisent SQL Server en tant que serveur principal tout en réduisant la surcharge de développement.

Les opérations d’API REST sont exécutées dans la base de données, améliorant ainsi la sécurité et réduisant les dépendances externes.

Caractéristique Descriptif Exemple de cas d’usage
Intégration de l’API Appeler des API externes à partir de T-SQL Enrichir des données avec des services non-Microsoft
Authentification des API Sécuriser les appels d’API avec des identités managées Se connecter aux services Azure en toute sécurité
Gestion des réponses Traiter les réponses JSON/XML en mode natif Transformer automatiquement des données externes
Gestion des demandes Configurer les délais d’expiration et les nouvelles tentatives Garantir la communication fiable de l’API

Utiliser des opérations RegEx

SQL Server 2025 ajoute la prise en charge native des expressions régulières (RegEx) dans T-SQL, ce qui permet une correspondance de modèles puissante et une manipulation de texte directement dans les requêtes. Avec de nouvelles fonctions telles que REGEXP_MATCHES, REGEXP_REPLACEet REGEXP_LIKE, les développeurs peuvent valider les entrées, extraire des modèles complexes et effectuer des transformations de chaîne avancées sans compter sur CLR (Common Language Runtime) ou des scripts externes. Cette fonctionnalité simplifie les tâches telles que le nettoyage des données, la validation de format et la recherche de modèles dynamiques, ce qui rend SQL Server plus polyvalent pour les scénarios de traitement des données modernes.

La prise en charge des expressions régulières ajoute des fonctionnalités de correspondance de modèle :

Fonction Objectif Example
REGEXP_MATCHES Tester si une chaîne correspond à un modèle Valider les formats de courrier électronique
REGEXP_REPLACE Remplacer du texte à l’aide de modèles Nettoyer et normaliser les données
REGEXP_EXTRACT Extraire les sous-chaînes correspondantes Analyser le texte structuré
REGEXP_LIKE Comparaison de chaînes basées sur des modèles Filtrer des données à l’aide de modèles

L’exemple suivant montre comment SQL Server 2025 peut appeler des API externes directement à l’aide sp_invoke_external_serviced’une requête POST avec des données dynamiques et des en-têtes sécurisés et capturer la réponse JSON pour une utilisation immédiate dans T-SQL.

-- Call an external API to enrich customer data
DECLARE @apiResponse JSON;
EXEC sp_invoke_external_service 
    @service_name = 'CustomerEnrichment',
    @url = 'https://api.example.com/enrich',
    @method = 'POST',
    @headers = '{"Authorization": "Bearer {{azure_token}}"}',
    @request_body = '{"customerId": @customerId}',
    @response = @apiResponse OUTPUT;

L’exemple suivant montre comment SQL Server 2025 utilise des fonctions RegEx telles que REGEXP_MATCHES la validation des formats de messagerie et REGEXP_REPLACE la normalisation des numéros de téléphone, ce qui permet une validation et une transformation de texte puissantes directement dans T-SQL.

-- Validate email addresses using RegEx
SELECT 
    CustomerID,
    Email,
    CASE 
        WHEN Email REGEXP_MATCHES '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
        THEN 'Valid'
        ELSE 'Invalid'
    END AS EmailStatus
FROM Customers;

-- Standardize phone numbers using RegEx
SELECT 
    PhoneNumber,
    REGEXP_REPLACE(
        PhoneNumber,
        '^\+?1?[-. ]?(\d{3})[-. ]?(\d{3})[-. ]?(\d{4})$',
        '($1) $2-$3'
    ) AS FormattedPhone
FROM Contacts;

Configurer le streaming d’événements

SQL Server 2025 introduit des fonctionnalités de streaming d’événements natifs, ce qui permet aux données en temps réel de circuler directement de la base de données vers des consommateurs externes sans pipelines ETL complexes. À l’aide de la prise en charge intégrée des protocoles de diffusion en continu, vous pouvez publier des modifications à partir de tables, de vues ou de requêtes en tant que flux continus vers des plateformes telles qu’Azure Event Hubs.

Configurer le streaming d’événements de modification

Vérifiez que votre espace de noms Azure Event Hubs est correctement configuré avant de configurer le streaming des événements de modification.

Modifier la diffusion en continu d’événements fournit :

  • Diffuser en continu les modifications du journal des transactions directement vers Azure Event Hubs
  • Réduire la surcharge d’E/S par rapport à la capture de données modifiées traditionnelle
  • Activer la réplication des données en temps réel
  • Prendre en charge les architectures pilotées par les événements

Voici quelques-uns des principaux avantages de la diffusion en continu des événements de modification :

  • Latence réduite : le streaming direct à partir des journaux des transactions élimine la nécessité d’un stockage intermédiaire
  • Réduction de l’utilisation des ressources : opérations d’E/S optimisées par rapport à celles de capture des changements de données (CDC)
  • Intégration de l’IA en temps réel : permettre aux agents IA de traiter et de réagir instantanément aux modifications des données
  • Architecture évolutive : conçue pour gérer des environnements de transactions à volume élevé

Utiliser des outils et des langages de développement

SQL Server 2025 développe la productivité des développeurs avec une prise en charge étendue du langage et des outils. Les développeurs peuvent travailler avec T-SQL en même temps que des langages modernes tels que Python, R et JavaScript via des environnements d’exécution intégrés, ce qui permet des workflows d’analytique avancés et d’IA directement dans la base de données.

Les extensions Visual Studio améliorées fournissent des fonctionnalités de débogage, IntelliSense et de déploiement plus riches, tandis que les nouveaux outils CLI simplifient l’automatisation et Azure Pipelines. Combiné aux points de terminaison de l’API REST et aux fonctionnalités natives JSON, RegEx et streaming d’événements, SQL Server 2025 offre une plateforme unifiée pour créer efficacement des applications modernes basées sur les données.

Installer le pilote Python

Le nouveau pilote Python pour SQL Server 2025 offre :

  • Installation facile via pip : pip install mssql-python
  • Prise en charge async/await pour de meilleures performances
  • Regroupement de connexions intégré
  • Indicateurs de type pour une meilleure intégration de l’IDE
  • Gestion complète des erreurs

L’extrait de code Python suivant montre comment effectuer une requête asynchrone sur une base de données SQL Server à l’aide de Python. Il utilise la mssql.async bibliothèque pour établir une connexion non bloquante avec connect('connection_string'), garantissant une gestion efficace des ressources avec async. À l’intérieur de la connexion, il crée un curseur, exécute une requête SELECT TOP 10 * FROM Customers SQL de manière asynchrone avec await cursor.execute(), puis récupère tous les résultats à l’aide await cursor.fetchall()de .

from mssql.async import connect

async with connect('connection_string') as conn:
    async with conn.cursor() as cursor:
        await cursor.execute('SELECT TOP 10 * FROM Customers')
        results = await cursor.fetchall()

Améliorer l’expérience VS Code avec GitHub Copilot

L’extension MSSQL pour Visual Studio Code inclut désormais des fonctionnalités basées sur l’IA via l’intégration de GitHub Copilot :

  • Génération sql intelligente :

    • Effectuer des requêtes SQL basées sur des descriptions de langage naturel
    • Suggérer des modèles de requête optimisés
    • Générer des modifications de schéma de base de données
  • Exploration intelligente du schéma :

    • Recommandations de schéma optimisés pour l’IA
    • Détection automatique des relations
    • Analyse d’impact pour les modifications de schéma
  • Optimisation des requêtes :

    • Suggestions d’amélioration des performances
    • Recommandations d’index
    • Analyse du plan d’exécution
  • Prise en charge de l’ORM :

    • Générer des migrations pour Entity Framework
    • Suggérer des modifications de modèle basées sur le schéma de base de données
    • Créer du code de couche d’accès aux données

Utilisez l’extension MSSQL pour configurer votre profil de connexion et ouvrir un nouvel éditeur de requête. Lorsque vous commencez à taper des commentaires comme suit :

-- Find all customers who made purchases in the last 30 days
-- and calculate their total spending

Copilot lit l’intention et suggère automatiquement une requête SQL complète.

SELECT 
    c.CustomerID,
    c.Name,
    COUNT(o.OrderID) as OrderCount,
    SUM(o.TotalAmount) as TotalSpending
FROM 
    Customers c
    JOIN Orders o ON c.CustomerID = o.CustomerID
WHERE 
    o.OrderDate >= DATEADD(day, -30, GETDATE())
GROUP BY 
    c.CustomerID,
    c.Name
HAVING 
    COUNT(o.OrderID) > 0
ORDER BY 
    TotalSpending DESC;

Appuyez sur Tab ou Entrée pour accepter la suggestion de Copilot, ou modifiez-la pour une précision.

Ces fonctionnalités permettent aux développeurs de créer des applications de base de données plus sophistiquées, efficaces et gérables tout en améliorant la productivité grâce à l’assistance ia et aux outils modernes.