Zwiększanie produktywności deweloperów za pomocą narzędzi i zintegrowanych usług

Ukończone

Program SQL Server 2025 udostępnia funkcje i narzędzia dla deweloperów do pracy z danymi, zdarzeniami i interfejsami API. W tej lekcji omówiono możliwości programowania w programie SQL Server 2025.

Implementowanie funkcji wzbogacania danych

Program SQL Server 2025 znacznie zwiększa możliwości wzbogacania danych o kilka kluczowych funkcji:

Praca z natywnym kodem JSON

Program SQL Server 2025 oferuje ulepszoną natywną obsługę kodu JSON, umożliwiając przechowywanie, wykonywanie zapytań i manipulowanie formatem JSON bezpośrednio w języku T-SQL. Nowe funkcje, takie jak JSON_OBJECT i JSON_VALUE upraszczają pracę z danymi częściowo ustrukturyzowanymi, a ulepszone indeksowanie zwiększa wydajność zapytań JSON. Ułatwia to łączenie danych relacyjnych i hierarchicznych w nowoczesnych aplikacjach.

Obsługa kodu JSON w programie SQL Server umożliwia natywne przechowywanie i pracę z danymi JSON.

  • Przetwarzanie dokumentów JSON bezpośrednio w programie SQL Server
  • Wykonywanie zapytań i aktualizowanie kodu JSON przy użyciu języka T-SQL
  • Właściwości indeksu JSON w celu zwiększenia wydajności
  • Weryfikowanie kodu JSON na poziomie bazy danych
  • Użyj typu danych JSON do ścisłego wymuszania typu

W poniższym przykładzie pokazano, jak program SQL Server 2025 używa nowego typu danych JSON z automatyczną walidacją i notacją kropkową, co pozwala przechowywać dane JSON w kolumnie i właściwościach zapytań, takich jak nazwa i cena bezpośrednio w języku T-SQL bez dodatkowych funkcji.

-- 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;

Wskazówka

ISJSON() Użyj funkcji , aby zweryfikować dane JSON przed zapisaniem ich w bazie danych.

Integrowanie interfejsów API REST

Program SQL Server 2025 wprowadza wbudowaną obsługę interfejsu API REST, umożliwiając bezpośrednią interakcję z obiektami bazy danych za pośrednictwem protokołu HTTP bez dodatkowego oprogramowania pośredniczącego. Deweloperzy mogą uwidaczniać tabele, widoki i procedury składowane jako punkty końcowe RESTful, co ułatwia integrację programu SQL Server z nowoczesnymi aplikacjami internetowymi i mobilnymi. Funkcja obsługuje bezpieczne uwierzytelnianie, ładunki JSON dla danych wejściowych i wyjściowych oraz szczegółową kontrolę nad tym, które operacje są uwidocznione. Upraszcza to tworzenie uproszczonych usług i mikrousług, które używają programu SQL Server jako zaplecza, jednocześnie zmniejszając obciążenie programistyczne.

Operacje interfejsu API REST są wykonywane w bazie danych, poprawiając bezpieczeństwo i zmniejszając zależności zewnętrzne.

Funkcja Description Przykładowy przypadek użycia
Integracja interfejsu API Wywoływanie zewnętrznych interfejsów API z języka T-SQL Wzbogacanie danych za pomocą usług innych niż microsoft
Uwierzytelnianie interfejsu API Bezpieczne wywołania interfejsu API za pomocą tożsamości zarządzanych Bezpieczne łączenie z usługami platformy Azure
Obsługa odpowiedzi Przetwarzanie odpowiedzi JSON/XML natywnie Automatyczne przekształcanie danych zewnętrznych
Zarządzanie żądaniami Konfigurowanie limitów czasu i ponownych prób Zapewnianie niezawodnej komunikacji interfejsu API

Użyj operacji wyrażeń regularnych

Program SQL Server 2025 dodaje natywną obsługę wyrażeń regularnych (RegEx) w języku T-SQL, umożliwiając zaawansowane dopasowywanie wzorców i manipulowanie tekstem bezpośrednio w zapytaniach. Dzięki nowym funkcjom, takich jak REGEXP_MATCHES, REGEXP_REPLACEi REGEXP_LIKE, deweloperzy mogą weryfikować dane wejściowe, wyodrębniać złożone wzorce i wykonywać zaawansowane przekształcenia ciągów bez polegania na środowisku CLR (Common Language Runtime) lub skryptach zewnętrznych. Ta funkcja upraszcza zadania, takie jak czyszczenie danych, walidacja formatu i wyszukiwanie wzorców dynamicznych, dzięki czemu program SQL Server jest bardziej wszechstronny w przypadku nowoczesnych scenariuszy przetwarzania danych.

Obsługa wyrażeń regularnych dodaje funkcje dopasowywania wzorców:

Funkcja Przeznaczenie Example
REGEXP_MATCHES Testowanie, czy ciąg pasuje do wzorca Weryfikowanie formatów poczty e-mail
REGEXP_REPLACE Zastępowanie tekstu przy użyciu wzorców Czyszczenie i standaryzacja danych
REGEXP_EXTRACT Wyodrębnianie pasujących podciągów Analizowanie tekstu strukturalnego
REGEXP_LIKE Porównanie ciągów opartych na wzorcu Filtrowanie danych przy użyciu wzorców

W poniższym przykładzie pokazano, jak program SQL Server 2025 może wywoływać zewnętrzne interfejsy API bezpośrednio przy użyciu metody sp_invoke_external_service, wysyłając żądanie POST z dynamicznymi danymi i bezpiecznymi nagłówkami oraz przechwytując odpowiedź JSON w celu natychmiastowego użycia w języku 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;

W poniższym przykładzie pokazano, jak program SQL Server 2025 używa funkcji RegEx, takich jak REGEXP_MATCHES weryfikowanie formatów poczty e-mail i REGEXP_REPLACE standaryzacja numerów telefonów, umożliwiając zaawansowaną walidację tekstu i transformację bezpośrednio w języku 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;

Konfigurowanie przesyłania strumieniowego zdarzeń

Program SQL Server 2025 wprowadza natywne funkcje przesyłania strumieniowego zdarzeń, umożliwiając przepływ danych w czasie rzeczywistym bezpośrednio z bazy danych do klientów zewnętrznych bez złożonych potoków ETL. Korzystając z wbudowanej obsługi protokołów przesyłania strumieniowego, można publikować zmiany z tabel, widoków lub zapytań jako ciągłe strumienie na platformy, takie jak Azure Event Hubs.

Ustawienie strumieniowego przesyłania zdarzeń zmian

Przed skonfigurowaniem przesyłania strumieniowego zdarzeń zmiany upewnij się, że przestrzeń nazw usługi Azure Event Hubs jest prawidłowo skonfigurowana.

Strumieniowe przesyłanie zdarzeń zmiany zapewnia:

  • Przesyłaj zmiany dziennika transakcji bezpośrednio do Azure Event Hubs
  • Zmniejszenie obciążenia we/wy w porównaniu z tradycyjną usługą CDC
  • Włączanie replikacji danych w czasie rzeczywistym
  • Obsługa architektur sterowanych zdarzeniami

Oto niektóre z kluczowych zalet strumieniowania zmian zdarzeń:

  • Mniejsze opóźnienie: bezpośrednie przesyłanie strumieniowe z dzienników transakcji eliminuje konieczność magazynowania pośredniego
  • Mniejsze użycie zasobów: zoptymalizowane operacje we/wy w porównaniu z CDC
  • Integracja sztucznej inteligencji w czasie rzeczywistym: Umożliwianie agentom sztucznej inteligencji natychmiastowego przetwarzania i reagowania na zmiany danych
  • Skalowalna architektura: skompilowana do obsługi środowisk transakcji o dużej ilości

Korzystanie z narzędzi deweloperskich i języków

Program SQL Server 2025 rozszerza produktywność deweloperów dzięki szerokiej obsłudze języków i narzędzi. Deweloperzy mogą pracować z językiem T-SQL wraz z nowoczesnymi językami, takimi jak Python, R i JavaScript, za pomocą zintegrowanych środowisk uruchomieniowych, umożliwiając zaawansowane przepływy pracy analizy i sztucznej inteligencji bezpośrednio w bazie danych.

Ulepszone rozszerzenia programu Visual Studio zapewniają bogatsze debugowanie, funkcję IntelliSense i funkcje wdrażania, a nowe narzędzia interfejsu wiersza polecenia upraszczają automatyzację i usługę Azure Pipelines. W połączeniu z punktami końcowymi interfejsu API REST i natywnymi funkcjami przesyłania strumieniowego JSON, RegEx i zdarzeń program SQL Server 2025 oferuje ujednoliconą platformę do wydajnego tworzenia nowoczesnych aplikacji opartych na danych.

Instalowanie sterownika języka Python

Nowy sterownik języka Python dla programu SQL Server 2025 oferuje:

  • Prosta instalacja za pomocą pip: pip install mssql-python
  • Obsługa mechanizmu async/await dla poprawy wydajności
  • Wbudowane buforowanie połączeń
  • Wskazówki dotyczące typów w celu uzyskania lepszej integracji środowiska IDE
  • Kompleksowa obsługa błędów

Poniższy fragment kodu języka Python pokazuje, jak wykonać asynchroniczne zapytanie względem bazy danych programu SQL Server przy użyciu języka Python. Używa biblioteki mssql.async do ustanowienia nieblokującego połączenia z connect('connection_string'), zapewniając wydajne zarządzanie zasobami z pomocą asynchroniczności. Wewnątrz połączenia tworzy kursor, wykonuje asynchronicznie zapytanie SQL używając SELECT TOP 10 * FROM Customers, i pobiera wszystkie wyniki przy użyciu await cursor.execute()await cursor.fetchall().

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()

Ulepszanie środowiska programu VS Code za pomocą narzędzia GitHub Copilot

Rozszerzenie MSSQL dla programu Visual Studio Code zawiera teraz funkcje oparte na sztucznej inteligencji za pośrednictwem integracji z rozwiązaniem GitHub Copilot:

  • Inteligentne generowanie kodu SQL:

    • Wykonywanie zapytań SQL na podstawie opisów języka naturalnego
    • Sugerowanie zoptymalizowanych wzorców zapytań
    • Generowanie modyfikacji schematu bazy danych
  • Eksploracja inteligentnego schematu:

    • Zalecenia dotyczące schematu opartego na sztucznej inteligencji
    • Automatyczne wykrywanie relacji
    • Analiza wpływu zmian schematu
  • Optymalizacja zapytań:

    • Sugestie dotyczące poprawy wydajności
    • Rekomendacje dotyczące indeksów
    • Analiza planu wykonania
  • Obsługa ORM:

    • Generowanie migracji programu Entity Framework
    • Sugerowanie zmian modelu na podstawie schematu bazy danych
    • Tworzenie kodu warstwy dostępu do danych

Użyj rozszerzenia MSSQL, aby skonfigurować profil połączenia i otworzyć nowy edytor zapytań. Po rozpoczęciu wpisywania komentarzy, takich jak:

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

Copilot odczytuje intencję i sugeruje automatyczne pełne zapytanie SQL.

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;

Naciśnij Tab lub Enter , aby zaakceptować sugestię Copilota lub edytować ją w celu uzyskania dokładności.

Te funkcje umożliwiają deweloperom tworzenie bardziej zaawansowanych, wydajnych i konserwowalnych aplikacji baz danych przy jednoczesnym zwiększeniu produktywności dzięki pomocy sztucznej inteligencji i nowoczesnym narzędziom.