Öka utvecklarproduktiviteten med verktyg och integrerade tjänster

Slutförd

SQL Server 2025 innehåller funktioner och verktyg som utvecklare kan använda för att arbeta med data, händelser och API:er. Den här lektionen beskriver utvecklingsfunktionerna i SQL Server 2025.

Implementera funktioner för databerikning

SQL Server 2025 förbättrar avsevärt funktionerna för databerikning med flera viktiga funktioner:

Arbeta med inbyggd JSON

SQL Server 2025 erbjuder förbättrat internt JSON-stöd så att du kan lagra, fråga efter och manipulera JSON direkt i T-SQL. Nya funktioner som JSON_OBJECT och JSON_VALUE förenklar arbetet med halvstrukturerade data, samtidigt som förbättrad indexering ökar prestandan för JSON-frågor. Detta gör det enklare att blanda relations- och hierarkiska data för moderna program.

Med JSON-stöd i SQL Server kan du lagra och arbeta med JSON-data internt.

  • Bearbeta JSON-dokument direkt i SQL Server
  • Fråga efter och uppdatera JSON med hjälp av T-SQL
  • Indexera JSON-egenskaper för snabbare prestanda
  • Verifiera JSON på databasnivå
  • Använd JSON-datatypen för strikt typframtvingande

I följande exempel visas hur SQL Server 2025 använder den nya JSON-datatypen med automatisk validering och punkt notation, så att du kan lagra JSON i en kolumn och fråga egenskaper som namn och pris direkt i T-SQL utan extra funktioner.

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

Tips/Råd

ISJSON() Använd funktionen för att verifiera JSON-data innan du lagrar dem i databasen.

Integrera REST-API:er

SQL Server 2025 introducerar inbyggt STÖD för REST API, vilket möjliggör direkt interaktion med databasobjekt via HTTP utan extra mellanprogram. Utvecklare kan exponera tabeller, vyer och lagrade procedurer som RESTful-slutpunkter, vilket gör det enklare att integrera SQL Server med moderna webb- och mobilprogram. Funktionen stöder säker autentisering, JSON-nyttolaster för indata och utdata samt detaljerad kontroll över vilka åtgärder som exponeras. Detta förenklar skapandet av lätta tjänster och mikrotjänster som använder SQL Server som en serverdel samtidigt som utvecklingskostnaderna minskar.

REST API-åtgärderna körs i databasen, vilket förbättrar säkerheten och minskar externa beroenden.

Egenskap Description Exempel på användningsfall
API-integrering Anropa externa API:er från T-SQL Berika data med tjänster som inte kommer från Microsoft
API-autentisering Säkra API-anrop med hanterade identiteter Ansluta till Azure-tjänster på ett säkert sätt
Svarshantering Bearbeta JSON/XML-svar internt Transformera externa data automatiskt
Hantering av begäranden Konfigurera tidsgränser och återförsök Säkerställa tillförlitlig API-kommunikation

Använda RegEx-åtgärder

SQL Server 2025 lägger till inbyggt stöd för reguljära uttryck (RegEx) i T-SQL, vilket möjliggör kraftfull mönstermatchning och textmanipulering direkt i frågor. Med nya funktioner som REGEXP_MATCHES, REGEXP_REPLACEoch REGEXP_LIKE, kan utvecklare validera indata, extrahera komplexa mönster och utföra avancerade strängtransformeringar utan att förlita sig på CLR (Common Language Runtime) eller externa skript. Den här funktionen förenklar uppgifter som datarensning, formatverifiering och sökning efter dynamiska mönster, vilket gör SQL Server mer mångsidigt för moderna databearbetningsscenarier.

Stöd för reguljära uttryck lägger till funktioner för mönstermatchning:

Funktion Avsikt Example
REGEXP_MATCHES Testa om en sträng matchar ett mönster Verifiera e-postformat
REGEXP_REPLACE Ersätt text med mönster Rensa och standardisera data
REGEXP_EXTRACT Extrahera matchande delsträngar Parsa strukturerad text
REGEXP_LIKE Mönsterbaserad strängjämförelse Filtrera data med hjälp av mönster

I följande exempel visas hur SQL Server 2025 kan anropa externa API:er direkt med hjälp av sp_invoke_external_service, skicka en POST-begäran med dynamiska data och säkra rubriker och samla in JSON-svaret för omedelbar användning i 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;

I följande exempel visas hur SQL Server 2025 använder RegEx-funktioner som REGEXP_MATCHES att validera e-postformat och REGEXP_REPLACE standardisera telefonnummer, vilket möjliggör kraftfull textverifiering och transformering direkt i 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;

Konfigurera händelseströmning

SQL Server 2025 introducerar funktioner för intern händelseströmning, vilket gör att realtidsdata kan flöda direkt från databasen till externa konsumenter utan komplexa ETL-pipelines. Med inbyggt stöd för strömningsprotokoll kan du publicera ändringar från tabeller, vyer eller frågor som kontinuerliga strömmar till plattformar som Azure Event Hubs.

Ställ in strömning av ändringshändelser

Kontrollera att azure Event Hubs-namnområdet är korrekt konfigurerat innan du konfigurerar ändringshändelseströmning.

Ändringshändelseströmning tillhandahåller:

  • Streama transaktionsloggändringar direkt till Azure Event Hubs
  • Minska I/O-omkostnaderna jämfört med traditionell CDC
  • Aktivera datareplikering i realtid
  • Stöd för händelsedrivna arkitekturer

Några av de viktigaste fördelarna med ändringshändelseströmning är:

  • Kortare svarstid: Direktuppspelning från transaktionsloggar eliminerar behovet av mellanliggande lagring
  • Lägre resursanvändning: Optimerade I/O-åtgärder jämfört med CDC
  • AI-integrering i realtid: Gör det möjligt för AI-agenter att bearbeta och reagera på dataändringar direkt
  • Skalbar arkitektur: Byggd för att hantera transaktionsmiljöer med stora volymer

Använda utvecklarverktyg och -språk

SQL Server 2025 utökar utvecklarproduktiviteten med brett stöd för språk och verktyg. Utvecklare kan arbeta med T-SQL tillsammans med moderna språk som Python, R och JavaScript via integrerade körningsmiljöer, vilket möjliggör avancerade analys- och AI-arbetsflöden direkt i databasen.

Förbättrade Visual Studio-tillägg ger bättre felsöknings-, IntelliSense- och distributionsfunktioner, medan nya CLI-verktyg förenklar automatisering och Azure Pipelines. I kombination med REST API-slutpunkter och interna JSON-, RegEx- och händelseströmningsfunktioner erbjuder SQL Server 2025 en enhetlig plattform för att skapa moderna, datadrivna program effektivt.

Installera drivrutin för Python

Den nya Python-drivrutinen för SQL Server 2025 erbjuder:

  • Enkel installation via pip: pip install mssql-python
  • Async/await-stöd för bättre prestanda
  • Inbyggd anslutningspoolning
  • Skriv tips för bättre IDE-integrering
  • Omfattande felhantering

Följande Python-kodfragment visar hur du utför en asynkron fråga mot en SQL Server-databas med python. Det använder mssql.async biblioteket för att upprätta en icke-blockerande anslutning med connect('connection_string'), vilket säkerställer effektiv resurshantering med asynkronisering. Inuti anslutningen skapar den en markör, kör asynkront en SQL-fråga med SELECT TOP 10 * FROM Customers och await cursor.execute(), och hämtar alla resultat med hjälp av 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()

Förbättra VS Code-upplevelsen med GitHub Copilot

MSSQL-tillägget för Visual Studio Code innehåller nu AI-baserade funktioner via GitHub Copilot-integrering:

  • Intelligent SQL-generering:

    • Slutföra SQL-frågor baserat på beskrivningar av naturligt språk
    • Föreslå optimerade frågemönster
    • Generera ändringar i databasschemat
  • Utforskning av smart schema:

    • Rekommendationer för AI-baserade scheman
    • Automatisk relationsidentifiering
    • Effektanalys för schemaändringar
  • Frågeoptimering:

    • Förslag på prestandaförbättringar
    • Indexrekommendationer
    • Analys av exekveringsplan
  • ORM-stöd:

    • Generera Entity Framework-migreringar
    • Föreslå modelländringar baserat på databasschema
    • Skapa kod för dataåtkomstlager

Använd MSSQL-tillägget för att konfigurera anslutningsprofilen och öppna en ny frågeredigerare. När du börjar skriva kommentarer som:

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

Copilot läser avsikten och föreslår en fullständig SQL-fråga automatiskt.

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;

Tryck Tabb eller Enter för att acceptera Copilots förslag eller redigera det för korrekthet.

Med de här funktionerna kan utvecklare skapa mer avancerade, effektiva och underhållsbara databasprogram samtidigt som produktiviteten förbättras genom AI-hjälp och moderna verktyg.