Productiviteit van ontwikkelaars verhogen met hulpprogramma's en geïntegreerde services
SQL Server 2025 biedt functies en hulpprogramma's waarmee ontwikkelaars kunnen werken met gegevens, gebeurtenissen en API's. In deze les worden de ontwikkelmogelijkheden in SQL Server 2025 behandeld.
Functies voor gegevensverrijking implementeren
SQL Server 2025 verbetert de mogelijkheden voor gegevensverrijking aanzienlijk met verschillende belangrijke functies:
Werken met systeemeigen JSON
SQL Server 2025 biedt verbeterde systeemeigen JSON-ondersteuning, zodat u JSON rechtstreeks in T-SQL kunt opslaan, opvragen en bewerken. Nieuwe functies zoals JSON_OBJECT en JSON_VALUE vereenvoudigen het werken met semi-gestructureerde gegevens, terwijl verbeterde indexering de prestaties voor JSON-query's verbetert. Dit maakt het combineren van relationele en hiërarchische gegevens eenvoudiger voor moderne toepassingen.
JSON ondersteuning in SQL Server laat je JSON-gegevens systeemeigen opslaan en ermee werken.
- JSON-documenten rechtstreeks in SQL Server verwerken
- JSON opvragen en bijwerken met behulp van T-SQL
- JSON-eigenschappen indexeren voor snellere prestaties
- JSON valideren op databaseniveau
- Het JSON-gegevenstype gebruiken voor strikte afdwinging van typen
In het volgende voorbeeld ziet u hoe SQL Server 2025 het nieuwe JSON-gegevenstype gebruikt met automatische validatie en puntnotatie, zodat u JSON kunt opslaan in een kolom en query-eigenschappen zoals naam en prijs rechtstreeks in T-SQL zonder extra functies.
-- 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;
Aanbeveling
Gebruik de ISJSON() functie om JSON-gegevens te valideren voordat u deze opslaat in de database.
REST API's integreren
SQL Server 2025 introduceert ingebouwde REST API-ondersteuning, waardoor directe interactie met databaseobjecten via HTTP mogelijk is zonder extra middleware. Ontwikkelaars kunnen tabellen, weergaven en opgeslagen procedures beschikbaar maken als RESTful-eindpunten, waardoor het eenvoudiger is om SQL Server te integreren met moderne web- en mobiele toepassingen. De functie ondersteunt beveiligde verificatie, JSON-nettoladingen voor invoer en uitvoer en nauwkeurige controle over welke bewerkingen beschikbaar worden gesteld. Dit vereenvoudigt het bouwen van lichtgewicht services en microservices die gebruikmaken van SQL Server als back-end en tegelijkertijd de overhead voor ontwikkeling verminderen.
De REST API-bewerkingen worden uitgevoerd in de database, waardoor de beveiliging wordt verbeterd en externe afhankelijkheden worden verminderd.
| Eigenschap | Beschrijving | Voorbeeld van use case |
|---|---|---|
| API-integratie | Externe API's aanroepen vanuit T-SQL | Gegevens verrijken met niet-Microsoft-services |
| API-verificatie | API-aanroepen beveiligen met beheerde identiteiten | Veilig verbinding maken met Azure-services |
| Verwerking van antwoorden | JSON-/XML-antwoorden systeemeigen verwerken | Externe gegevens automatisch transformeren |
| Aanvraagbeheer | Configuratie van time-outs en herhalingen | Betrouwbare API-communicatie garanderen |
RegEx-bewerkingen gebruiken
SQL Server 2025 voegt systeemeigen ondersteuning toe voor reguliere expressies (RegEx) in T-SQL, waardoor krachtige patroonkoppeling en tekstbewerking rechtstreeks in query's mogelijk zijn. Met nieuwe functies zoals REGEXP_MATCHES, REGEXP_REPLACEen REGEXP_LIKE, kunnen ontwikkelaars invoer valideren, complexe patronen extraheren en geavanceerde tekenreekstransformaties uitvoeren zonder te vertrouwen op CLR (Common Language Runtime) of externe scripts. Deze functie vereenvoudigt taken zoals het opschonen van gegevens, het opmaken van validatie en het zoeken naar dynamische patronen, waardoor SQL Server veelzijdiger wordt voor moderne scenario's voor gegevensverwerking.
Ondersteuning voor reguliere expressies voegt mogelijkheden voor patroonkoppeling toe:
| Functie | Doel | Example |
|---|---|---|
| REGEXP_MATCHES | Testen of een tekenreeks overeenkomt met een patroon | Valideer e-mailformaten |
| REGEXP_REPLACE | Tekst vervangen met behulp van patronen | Gegevens opschonen en standaardiseren |
| REGEXP_EXTRACT | Overeenkomende subtekenreeksen extraheren | Gestructureerde tekst parseren |
| REGEXP_LIKE | Vergelijking van tekenreeksen op basis van patroon | Gegevens filteren met behulp van patronen |
In het volgende voorbeeld ziet u hoe SQL Server 2025 externe API's rechtstreeks kan aanroepen met behulp van sp_invoke_external_service, een POST-aanvraag met dynamische gegevens en beveiligde headers kan verzenden en het JSON-antwoord kan vastleggen voor direct gebruik in 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;
In het volgende voorbeeld ziet u hoe SQL Server 2025 RegEx-functies gebruikt, zoals REGEXP_MATCHES om e-mailindelingen te valideren en REGEXP_REPLACE om telefoonnummers te standaardiseren, waardoor krachtige tekstvalidatie en transformatie rechtstreeks in T-SQL mogelijk is.
-- 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;
Gebeurtenisstreaming configureren
SQL Server 2025 introduceert systeemeigen mogelijkheden voor gebeurtenisstreaming, waardoor realtime gegevens rechtstreeks van de database naar externe consumenten kunnen stromen zonder complexe ETL-pijplijnen. Met ingebouwde ondersteuning voor streamingprotocollen kunt u wijzigingen van tabellen, weergaven of query's publiceren als continue stromen naar platforms zoals Azure Event Hubs.
Gebeurtenisstreaming voor wijzigingen instellen
Zorg ervoor dat uw Azure Event Hubs-naamruimte juist is geconfigureerd voordat u gebeurtenisstreaming instelt.
Streaming van veranderingsgebeurtenissen biedt:
- Wijzigingen in transactielogboeken rechtstreeks naar Azure Event Hubs streamen
- De vermindering van I/O-overhead ten opzichte van traditionele CDC
- Realtime gegevensreplicatie inschakelen
- Gebeurtenisgestuurde architecturen ondersteunen
Enkele van de belangrijkste voordelen van het streamen van wijzigingen zijn:
- Verminderde latentie: Directe streaming vanuit transactielogboeken elimineert de noodzaak van tussenliggende opslag
- Lager resourcegebruik: geoptimaliseerde I/O-bewerkingen vergeleken met CDC
- Realtime AI-integratie: AI-agents in staat stellen om gegevenswijzigingen direct te verwerken en erop te reageren
- Schaalbare architectuur: gebouwd voor het afhandelen van transactieomgevingen met een hoog volume
Hulpprogramma's en talen voor ontwikkelaars gebruiken
SQL Server 2025 breidt de productiviteit van ontwikkelaars uit met brede taal- en hulpprogrammaondersteuning. Ontwikkelaars kunnen naast moderne talen, zoals Python, R en JavaScript, werken met T-SQL via geïntegreerde runtimeomgevingen, waardoor geavanceerde analyses en AI-werkstromen rechtstreeks in de database worden ingeschakeld.
Verbeterde Visual Studio-extensies bieden uitgebreidere foutopsporing, IntelliSense en implementatiefuncties, terwijl nieuwe CLI-hulpprogramma's automatisering en Azure Pipelines vereenvoudigen. In combinatie met REST API-eindpunten en systeemeigen JSON-, RegEx- en gebeurtenisstreamingmogelijkheden biedt SQL Server 2025 een geïntegreerd platform voor het efficiënt bouwen van moderne, gegevensgestuurde toepassingen.
Stuurprogramma voor Python installeren
Het nieuwe Python stuurprogramma voor SQL Server 2025 biedt:
- Eenvoudige installatie via pip:
pip install mssql-python - Async/await-ondersteuning voor betere prestaties
- Ingebouwde groepsgewijze verbindingen
- Typehints voor betere IDE-integratie
- Uitgebreide foutafhandeling
In het volgende Python fragment ziet u hoe u een asynchrone query uitvoert op een SQL Server-database met behulp van Python. De mssql.async-bibliotheek wordt gebruikt om een niet-blokkerende verbinding met connect('connection_string') tot stand te brengen, wat zorgt voor efficiënt resourcebeheer met asynchrone verwerking. In de verbinding wordt een cursor gemaakt, een SQL-query uitgevoerd met SELECT TOP 10 * FROM Customers asynchroon met await cursor.execute()en worden alle resultaten opgehaald met behulp van 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()
Vs Code-ervaring verbeteren met GitHub Copilot
De MSSQL-extensie voor Visual Studio Code bevat nu AI-functies via GitHub Copilot-integratie:
Intelligente SQL-generatie:
- SQL-query's voltooien op basis van beschrijvingen van natuurlijke taal
- Geoptimaliseerde querypatronen voorstellen
- Wijzigingen in databaseschema's genereren
Verkenning van slimme schema's:
- Aanbevelingen voor door AI aangedreven schema's
- Automatische relatiedetectie
- Impactanalyse voor schemawijzigingen
Queryoptimalisatie:
- Suggesties voor prestatieverbetering
- Aanbevelingen voor indexen
- Analyse van uitvoeringsplan
ORM-ondersteuning:
- Entity Framework-migraties genereren
- Modelwijzigingen voorstellen op basis van databaseschema
- Code voor gegevenstoegangslaag maken
Gebruik de MSSQL-extensie om uw verbindingsprofiel in te stellen en een nieuwe query-editor te openen. Wanneer u opmerkingen begint te typen, zoals:
-- Find all customers who made purchases in the last 30 days
-- and calculate their total spending
Copilot leest de intentie en stelt automatisch een volledige SQL-query voor.
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;
Druk op Tab of Enter om de suggestie van Copilot te accepteren of te bewerken voor nauwkeurigheid.
Met deze functies kunnen ontwikkelaars geavanceerdere, efficiënte en onderhoudbare databasetoepassingen bouwen en tegelijkertijd de productiviteit verbeteren via AI-hulp en moderne hulpprogramma's.