Zwiększanie produktywności deweloperów za pomocą narzędzi i zintegrowanych usług
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.