Araçlar ve tümleşik hizmetlerle geliştirici üretkenliğini artırın
SQL Server 2025 geliştiricilerin veri, olay ve API'lerle çalışması için özellikler ve araçlar sağlar. Bu ünite, SQL Server 2025'teki geliştirme özelliklerini kapsar.
Veri zenginleştirme özelliklerini uygulama
SQL Server 2025, çeşitli temel özelliklerle veri zenginleştirme özelliklerini önemli ölçüde geliştirir:
Yerel JSON ile çalışma
SQL Server 2025, JSON'ı doğrudan T-SQL'de depolamanıza, sorgulamanıza ve işlemenize izin vererek geliştirilmiş yerel JSON desteği sunar. Yarı yapılandırılmış verilerle çalışmayı basitleştiren JSON_OBJECT ve JSON_VALUE gibi yeni işlevler, JSON sorgularının performansını artıran geliştirilmiş dizin oluşturma ile birlikte sunulmaktadır. Bu, modern uygulamalar için ilişkisel ve hiyerarşik verilerin karıştırılmasında kolaylık sağlar.
SQL Server'da JSON desteği, JSON verilerini yerel olarak depolamanıza ve bunlarla çalışmanıza olanak tanır.
- JSON belgelerini doğrudan SQL Server işleme
- T-SQL kullanarak JSON'ı sorgulama ve güncelleştirme
- Daha hızlı performans için JSON özelliklerini dizine ekleme
- JSON'yi veritabanı düzeyinde doğrulama
- Kesin tür denetimi için JSON veri türünü kullanın
Aşağıdaki örnekte, SQL Server 2025'in yeni JSON veri türünü otomatik doğrulama ve nokta gösterimiyle nasıl kullandığı gösterilmektedir ve JSON'ı ek işlevler olmadan doğrudan T-SQL'de ad ve fiyat gibi bir sütunda ve sorgu özelliklerinde depolamanıza olanak sağlar.
-- 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;
Tavsiye
ISJSON() JSON verilerini veritabanında depolamadan önce doğrulamak için işlevini kullanın.
REST API'lerini tümleştirme
SQL Server 2025, ek ara yazılım olmadan HTTP üzerinden veritabanı nesneleriyle doğrudan etkileşime olanak tanıyan yerleşik REST API desteği sunar. Geliştiriciler, tabloları, görünümleri ve saklı yordamları RESTful uç noktaları olarak açığa çıkarıp SQL Server'ı modern web ve mobil uygulamalarla tümleştirmeyi kolaylaştırabilir. Bu özellik güvenli kimlik doğrulamasını, giriş ve çıkış için JSON yüklerini ve hangi işlemlerin kullanıma sunulduğuna ilişkin ayrıntılı denetimi destekler. Bu, geliştirme ek yükünü azaltırken arka uç olarak SQL Server kullanan basit hizmetler ve mikro hizmetler oluşturmayı kolaylaştırır.
REST API işlemleri veritabanında yürütülerek güvenliği artırır ve dış bağımlılıkları azaltır.
| Özellik | Description | Örnek Kullanım Örneği |
|---|---|---|
| API tümleştirmesi | T-SQL'den dış API'leri çağırma | Microsoft dışı hizmetlerle verileri zenginleştirme |
| API kimlik doğrulama | Yönetilen kimliklerle API çağrılarının güvenliğini sağlama | Azure hizmetlerine güvenli bir şekilde bağlanma |
| Yanıt işleme | JSON/XML yanıtlarını yerel olarak işleme | Dış verileri otomatik olarak dönüştürme |
| İstek yönetimi | Zaman aşımlarını ve yeniden denemeleri yapılandırma | Güvenilir API iletişimi sağlama |
RegEx işlemlerini kullanma
SQL Server 2025, T-SQL'de normal ifadeler (RegEx) için yerel destek ekleyip doğrudan sorgular içinde güçlü desen eşleştirme ve metin işleme olanağı sağlar. , REGEXP_MATCHESve REGEXP_REPLACEgibi REGEXP_LIKEyeni işlevlerle geliştiriciler CLR (Common Language Runtime) veya dış betiklere güvenmeden girişi doğrulayabilir, karmaşık desenleri ayıklayabilir ve gelişmiş dize dönüştürmeleri gerçekleştirebilir. Bu özellik, veri temizleme, biçim doğrulama ve dinamik desenleri arama gibi görevleri basitleştirerek SQL Server modern veri işleme senaryoları için daha çok yönlü hale getirir.
Normal ifade desteği desen eşleştirme özellikleri ekler:
| İşlev | Amaç | Example |
|---|---|---|
| REGEXP_MATCHES | Dizenin bir desenle eşleşip eşleşmediğini test edin | E-posta biçimlerini doğrulama |
| REGEXP_REPLACE | Desenleri kullanarak metni değiştirme | Verileri temizleme ve standartlaştırma |
| REGEXP_EXTRACT | Eşleşen alt dizeleri ayıkla | Yapılandırılmış metni ayrıştırma |
| REGEXP_LIKE | Desen tabanlı dize karşılaştırması | Desenleri kullanarak verileri filtreleme |
Aşağıdaki örnekte, SQL Server 2025'in sp_invoke_external_service kullanarak dış API'leri nasıl doğrudan çağırabileceği, dinamik veri ve güvenli üst bilgiler içeren bir POST isteği gönderebildiği ve T-SQL'de hemen kullanmak üzere JSON yanıtını nasıl yakalayabileceği gösterilmektedir.
-- 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;
Aşağıdaki örnek, SQL Server 2025'in e-posta biçimlerini doğrulamak için REGEXP_MATCHES gibi RegEx işlevlerini nasıl kullandığını ve telefon numaralarını standartlaştırmak için REGEXP_REPLACE kullanarak doğrudan T-SQL'de güçlü metin doğrulama ve dönüştürmeyi nasıl etkinleştirtiğini gösterir.
-- 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;
Olay akışını yapılandırma
SQL Server 2025, gerçek zamanlı verilerin karmaşık ETL işlem hatları olmadan doğrudan veritabanından dış tüketicilere akmasına olanak sağlayan yerel olay akışı özellikleri sunar. Akış protokolleri için yerleşik desteği kullanarak tablo, görünüm veya sorgulardaki değişiklikleri Azure Event Hubs gibi platformlara sürekli akış olarak yayımlayabilirsiniz.
Değişiklik olayı akışını yapılandırma
Değişiklik olayı akışını ayarlamadan önce Azure Event Hubs ad alanınızın düzgün yapılandırıldığından emin olun.
Değişiklik olay akışı şunları sağlar:
- İşlem günlüğü değişikliklerini doğrudan Azure Event Hubs'e akışla gönderin.
- Geleneksel CDC'ye kıyasla G/Ç ek yükünü azaltın
- Gerçek zamanlı veri çoğaltmayı etkinleştirme
- Olay odaklı mimarileri destekleme
Değişiklik olayı akışının temel avantajlarından bazıları şunlardır:
- Azaltılmış gecikme süresi: İşlem günlüklerinden doğrudan akış, ara depolama gereksinimini ortadan kaldırır
- Daha düşük kaynak kullanımı: CDC ile karşılaştırıldığında iyileştirilmiş G/Ç işlemleri
- Gerçek zamanlı yapay zeka tümleştirmesi: Yapay zeka aracılarının veri değişikliklerini anında işlemesini ve bunlara tepki vermesini sağlama
- Ölçeklenebilir mimari: Yüksek hacimli işlem ortamlarını işlemek için oluşturulmuş
Geliştirici araçlarını ve dillerini kullanma
SQL Server 2025, geniş dil ve araç desteğiyle geliştirici üretkenliğini artırır. Geliştiriciler tümleşik çalışma zamanı ortamları aracılığıyla Python, R ve JavaScript gibi modern dillerin yanı sıra T-SQL ile birlikte çalışarak doğrudan veritabanında gelişmiş analiz ve yapay zeka iş akışlarına olanak tanıyabilir.
Gelişmiş Visual Studio uzantıları daha zengin hata ayıklama, IntelliSense ve dağıtım özellikleri sağlarken, yeni CLI araçları otomasyonu ve Azure Pipelines basitleştirir. REST API uç noktaları ve yerel JSON, RegEx ve olay akışı özellikleriyle birlikte SQL Server 2025, modern, veri temelli uygulamaları verimli bir şekilde oluşturmaya yönelik birleşik bir platform sunar.
Python sürücüsünü yükleme
SQL Server 2025 için yeni Python sürücüsü şu teklifleri sunar:
- Pip aracılığıyla basit yükleme:
pip install mssql-python - Daha iyi performans için eşzamansız/bekleme desteği
- Yerleşik bağlantı havuzu oluşturma
- Daha iyi IDE entegrasyonu için tür ipuçları
- Kapsamlı hata işleme
Aşağıdaki Python kod parçacığı, Python kullanarak bir SQL Server veritabanında zaman uyumsuz sorgunun nasıl gerçekleştirileceklerini gösterir.
mssql.async kitaplığını kullanarak connect('connection_string') ile engelleyici olmayan bir bağlantı kurar ve asenkron kaynak yönetimini sağlar. Bağlantının içinde bir imleç oluşturur, SELECT TOP 10 * FROM Customers zaman uyumsuz olarak await cursor.execute() kullanarak bir SQL sorgusu yürütür ve await cursor.fetchall() kullanarak tüm sonuçları alır.
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()
GitHub Copilot ile VS Code deneyimini geliştirme
Visual Studio Code için MSSQL uzantısı, artık GitHub Copilot tümleştirme aracılığıyla yapay zeka destekli bir özellik içeriyor.
Akıllı SQL oluşturma:
- Doğal dil açıklamalarını temel alan TAM SQL sorguları
- İyileştirilmiş sorgu desenleri önerin
- Veritabanı şeması değişiklikleri oluşturma
Akıllı şema keşfi:
- Yapay zeka destekli şema önerileri
- Otomatik ilişki algılama
- Şema değişiklikleri için etki analizi
Sorgu iyileştirme:
- Performans geliştirme önerileri
- Dizin önerileri
- Yürütme planı analizi
ORM desteği:
- Entity Framework geçişleri oluşturma
- Veritabanı şemasına göre model değişiklikleri önerme
- Veri erişim katmanı kodu oluşturma
Bağlantı profilinizi ayarlamak ve yeni bir sorgu düzenleyicisi açmak için MSSQL uzantısını kullanın. Aşağıdaki gibi açıklamalar yazmaya başladığınızda:
-- Find all customers who made purchases in the last 30 days
-- and calculate their total spending
Copilot amacı okur ve otomatik olarak tam bir SQL sorgusu önerir.
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;
Copilot önerisini kabul etmek veya doğru olması için düzenlemek için Tab veya Enter tuşlarına basın.
Bu özellikler geliştiricilerin yapay zeka yardımı ve modern araçlar aracılığıyla üretkenliği artırırken daha gelişmiş, verimli ve sürdürülebilir veritabanı uygulamaları oluşturmasını sağlar.