COMPUTER ENGINEER

Örneklere git
Blog
SQL Server / T-SQL6 dk çalışma
40/ 65

Veritabanı programlama

VIEW: sorguya isim vermek

Tutarlı bir okuma sözleşmesi oluştur.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

View, saklanan bir SELECT tanımıdır; normal view sonuçları kendiliğinden fiziksel olarak saklamaz. Raporların aynı gelir tanımını kullanmasını sağlar. Sipariş toplamı view’inde her satırın bir sipariş olduğunu sözleşmeye yaz. İçteki ORDER BY, dıştaki sorgunun sırasını garanti etmez.

View bir güvenlik sınırı olabilir, ancak izinler ve ownership chain ayrıca tasarlanmalıdır. SELECT * yerine açık sütunlar kullan; tablonun değişmesi tüketicinin sözleşmesini sessizce bozmasın. Indexed view ayrı bir mekanizmadır, SET seçenekleri ve yazma maliyeti vardır. Her view’i otomatik performans iyileştirmesi sanma. CREATE OR ALTER VIEW kendi batch’inin ilk ifadesi olmalıdır; SSMS’de GO ile ayır.

NERESİNDE KULLANIRSIN?

Tekrarlanan rapor mantığını merkezileştirmek için.

SIK YAPILAN HATA

View’i önceden hesaplanmış tablo sanmak.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

T-SQL / SQL Server 2019+
SELECT OrderId, CustomerId FROM lab.SalesOrder WHERE Status = 'Paid';

View’e taşınacak okuma sözleşmesi.

Bu sayfa SQL çalıştırmaz. Örnekleri indirilebilir SqlStudioLab veritabanında, SSMS’de uygula. Geçici tablo örneklerini yeniden çalıştırırken yalnız ilgili #tabloyu temizle. VIEW, procedure ve function örnekleri lab’da kalıcı nesne oluşturur; üretim bağlantısı kullanma.

02 / SIRA SENDE

Önce kendin dene.

PaidOrders view’ini kullanarak müşteri bazında sipariş say.

Çözümü ve açıklamasını göster
Açıklamalı çözüm
SELECT CustomerId, COUNT(*) AS Orders FROM lab.PaidOrders GROUP BY CustomerId;

Önce orta örnekteki view’i oluştur. Tabloya doğrudan erişimle aynı dokuz ücretli sipariş sayılır.