Elevar a produtividade do desenvolvedor com ferramentas e serviços integrados
O SQL Server 2025 fornece recursos e ferramentas para os desenvolvedores trabalharem com dados, eventos e APIs. Esta unidade aborda os recursos de desenvolvimento no SQL Server 2025.
Implementar recursos de enriquecimento de dados
O SQL Server 2025 melhora significativamente os recursos de enriquecimento de dados com vários recursos importantes:
Trabalhar com JSON nativo
O SQL Server 2025 oferece suporte JSON nativo aprimorado, permitindo que você armazene, consulte e manipule JSON diretamente no T-SQL. Novas funções como JSON_OBJECT e JSON_VALUE simplificam o trabalho com dados semiestruturados, enquanto a indexação aprimorada aumenta o desempenho de consultas JSON. Isso facilita a mesclagem de dados relacionais e hierárquicos para aplicativos modernos.
O suporte JSON no SQL Server permite que você armazene e trabalhe com dados JSON nativamente.
- Processar documentos JSON diretamente no SQL Server
- Consultar e atualizar JSON usando T-SQL
- Indexar propriedades JSON para um desempenho mais rápido
- Validar JSON no nível do banco de dados
- Usar o tipo de dados JSON para impor tipos de forma rigorosa
O exemplo a seguir mostra como o SQL Server 2025 usa o novo tipo de dados JSON com validação automática e notação de ponto, permitindo que você armazene JSON em uma coluna e consulte propriedades como nome e preço diretamente no T-SQL sem funções extras.
-- 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;
Dica
Use a ISJSON() função para validar dados JSON antes de armazená-los no banco de dados.
Integrar APIs REST
O SQL Server 2025 apresenta suporte interno à API REST, permitindo a interação direta com objetos de banco de dados via HTTP sem middleware extra. Os desenvolvedores podem expor tabelas, exibições e procedimentos armazenados como pontos de extremidade RESTful, facilitando a integração do SQL Server com aplicativos web e móveis modernos. O recurso dá suporte à autenticação segura, cargas JSON para entrada e saída e controle refinado sobre quais operações são expostas. Isso simplifica a criação de serviços leves e microsserviços que usam o SQL Server como um back-end, reduzindo a sobrecarga de desenvolvimento.
As operações da API REST são executadas no banco de dados, melhorando a segurança e reduzindo as dependências externas.
| Característica | Description | Exemplo de Caso de Uso |
|---|---|---|
| Integração de API | Chamar APIs externas do T-SQL | Enriquecer dados com serviços que não são da Microsoft |
| Autenticação de API | Proteger chamadas à API com identidades gerenciadas | Conectar-se aos serviços do Azure com segurança |
| Tratamento de resposta | Processar respostas JSON/XML nativamente | Transformar dados externos automaticamente |
| Gerenciamento de solicitações | Configurar tempos limite e novas tentativas | Garantir uma comunicação de API confiável |
Usar operações RegEx
O SQL Server 2025 adiciona suporte nativo para expressões regulares (RegEx) no T-SQL, permitindo uma correspondência avançada de padrões e manipulação de texto diretamente em consultas. Com novas funções, como REGEXP_MATCHES, REGEXP_REPLACEe REGEXP_LIKE, os desenvolvedores podem validar a entrada, extrair padrões complexos e executar transformações de cadeia de caracteres avançadas sem depender de CLR (Common Language Runtime) ou scripts externos. Esse recurso simplifica tarefas como limpeza de dados, validação de formato e pesquisa de padrões dinâmicos, tornando o SQL Server mais versátil para cenários modernos de processamento de dados.
O suporte a expressões regulares adiciona recursos de correspondência de padrões:
| Função | Propósito | Example |
|---|---|---|
| REGEXP_MATCHES | Testar se uma cadeia de caracteres corresponde a um padrão | Validar formatos de email |
| REGEXP_REPLACE | Substituir texto usando padrões | Limpar e padronizar dados |
| REGEXP_EXTRACT | Extrair as subcadeias correspondentes | Analisar texto estruturado |
| REGEXP_LIKE | Comparação de cadeia de caracteres baseada em padrão | Filtrar dados usando padrões |
O exemplo a seguir mostra como o SQL Server 2025 pode chamar APIs externas diretamente usando sp_invoke_external_service, enviando uma solicitação POST com dados dinâmicos e cabeçalhos seguros e capturando a resposta JSON para uso imediato no 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;
O exemplo a seguir mostra como o SQL Server 2025 usa funções RegEx como REGEXP_MATCHES validar formatos de email e REGEXP_REPLACE padronizar números de telefone, permitindo validação e transformação de texto avançadas diretamente no 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;
Configurar o streaming de eventos
O SQL Server 2025 apresenta recursos de streaming de eventos nativos, permitindo que os dados em tempo real fluam diretamente do banco de dados para consumidores externos sem pipelines ETL complexos. Usando o suporte interno para protocolos de streaming, você pode publicar alterações de tabelas, exibições ou consultas como fluxos contínuos para plataformas como Hubs de Eventos do Azure.
Configurar o streaming de eventos de alteração
Verifique se o namespace dos Hubs de Eventos do Azure está configurado corretamente antes de configurar o streaming de eventos de alteração.
O streaming de eventos de alteração fornece:
- Transmitir alterações de log de transações diretamente para os Hubs de Eventos do Azure
- Reduzir a sobrecarga de E/S em comparação com o CDC tradicional
- Habilitar a replicação de dados em tempo real
- Dar suporte a arquiteturas controladas por eventos
Alguns dos principais benefícios do streaming de eventos de mudança incluem:
- Latência reduzida: o streaming direto dos logs de transações elimina a necessidade de armazenamento intermediário
- Menor uso de recursos: operações de E/S otimizadas em comparação com CDC
- Integração de IA em tempo real: habilitar agentes de IA para processar e reagir às alterações de dados instantaneamente
- Arquitetura escalonável: criada para lidar com ambientes de transação de alto volume
Usar ferramentas e idiomas para desenvolvedores
O SQL Server 2025 expande a produtividade do desenvolvedor com amplo suporte a ferramentas e linguagens. Os desenvolvedores podem trabalhar com o T-SQL juntamente com linguagens modernas como Python, R e JavaScript por meio de ambientes de runtime integrados, permitindo análises avançadas e fluxos de trabalho de IA diretamente no banco de dados.
As extensões aprimoradas do Visual Studio fornecem recursos mais avançados de depuração, IntelliSense e implantação, enquanto novas ferramentas da CLI simplificam a automação e o Azure Pipelines. Combinado com pontos de extremidade da API REST e recursos nativos de JSON, RegEx e streaming de eventos, o SQL Server 2025 oferece uma plataforma unificada para criar aplicativos modernos e controlados por dados com eficiência.
Instalar o driver do Python
O novo driver Python para SQL Server 2025 oferece:
- Instalação simples por meio do pip:
pip install mssql-python - Suporte para async/await visando melhor desempenho
- Agrupamento de conexões interno
- Dicas de tipo para melhor integração com o IDE
- Tratamento abrangente de erros
O snippet do Python a seguir mostra como executar uma consulta assíncrona em um banco de dados do SQL Server usando Python. Usa a biblioteca mssql.async para estabelecer uma conexão não bloqueante com connect('connection_string'), garantindo gerenciamento eficiente de recursos com async. Dentro da conexão, ele cria um cursor, executa uma consulta SQL usando SELECT TOP 10 * FROM Customers de forma await cursor.execute()assíncrona e recupera todos os resultados usando 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()
Aprimorar a experiência do VS Code com o GitHub Copilot
A extensão MSSQL para Visual Studio Code agora inclui recursos de IA por meio da integração do GitHub Copilot:
Geração de SQL inteligente:
- Concluir consultas SQL com base em descrições de linguagem natural
- Sugerir padrões de consulta otimizados
- Gerar modificações de esquema de banco de dados
Exploração de esquema inteligente:
- Recomendações de estrutura alimentadas por IA
- Detecção automática de relação
- Análise de impacto para alterações de esquema
Otimização de consulta:
- Sugestões de melhoria de desempenho
- Recomendações de índice
- Análise do plano de execução
Suporte a ORM:
- Gerar migrações do Entity Framework
- Sugerir alterações de modelo com base no esquema de banco de dados
- Criar código de camada de acesso a dados
Use a extensão MSSQL para configurar seu perfil de conexão e abrir um novo editor de consultas. Quando você começa a digitar comentários como:
-- Find all customers who made purchases in the last 30 days
-- and calculate their total spending
Copilot lê a intenção e sugere uma consulta SQL completa automaticamente.
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;
Pressione Tab ou Enter para aceitar a sugestão do Copilot ou editá-la para precisão.
Esses recursos permitem que os desenvolvedores criem aplicativos de banco de dados mais sofisticados, eficientes e manteneveis, melhorando a produtividade por meio da assistência de IA e ferramentas modernas.