SQL-də Görünüşlərdən istifadə

Sistem dizaynı ilə bağlı müsahibə sualları o qədər açıq ola bilər ki, düzgün hazırlaşmağı bilmək çox çətindir. İndi satın aldıqdan sonra Amazon, Microsoft və Adobe-nin dizayn dövrlərini sındıra bilirəm Bu kitabı. Gündəlik bir yenidən nəzərdən keçirin dizayn sualı və söz verirəm ki, dizayn dövrünü sındıra bilərsiniz.

Baxışlar cədvəl kimi fəaliyyət göstərən adlanan sorğulardır. Mürəkkəb bir sorğu bir neçə dəfə istifadə edildikdə, sorğunun bir hissəsi sonrakı sorğularda istifadə etmək üçün saxlanıla bilər. Ancaq başqa bir sorğuda yenidən istifadə etmək üçün bir ad olmalıdır. Bu cür sorğular görünüş kimi tanınır. Sorğuda istifadə edildikdə tərtib ediləcəkdir. Aşağıdakı kimi yaradıla bilər: Bu görünüş BOOK_LOAN cədvəlində borcalanların 2015-ci ilin iyun ayında borc aldığı kitabları almaq üçün yaradılmışdır.

CREATE VIEW vw_book_loan_Jun AS
SELECT * FROM BOOK_LOAN
WHERE TO_CHAR (LOAN_DATE, 'MMYYYY') = '062015';

Sorguduğumuz kimi qeydləri də baxa bilərik masaları. Burada hər dəfə görünüşü sorguladığımız zaman, görünüşün əsasını təşkil edən sorğu icra edilir. Bu o deməkdir ki, * baxışdan seçin, əslində məlumatları əldə etmək üçün BOOK_LOAN cədvəlini sorğulayır.

SEÇİN * vw_book_loan_Jun-dan;


DROP ifadəsini istifadə edərək masaları buraxdığımız kimi baxışlar düşə bilər.

DROP VIEW vw_book_loan_Jun;

Mövcud görünüşü dəyişdirə bilərik. Ancaq əvvəlcə mənzərəni DAMAMAQ, sonra yenidən yaratmalıyıq. Bu, aşağıdakı kimi YARATMA VƏ DƏYİŞDİR ifadələrindən istifadə etməklə də edilə bilər. Mövcud deyilsə, bir görünüş yaradır; mövcuddursa, görünüşü yeni sorğu ilə əvəz edir.
CREATE OR REPLACE VIEW vw_book_loan_Jun AS
SELECT * FROM BOOK_LOAN
WHERE TO_CHAR (LOAN_DATE, 'MMYYYY') >= '062015';

Taxmaq, yeniləmək və ya silmək kimi DML-lərdən istifadə edərkən görünüşdə məhdudiyyətlər var. Baxışlar cədvəldəki bütün sütunlara və qeydlərə sahib ola bilməz. Cədvəlin alt hissəsidir. Bunun da məhdudiyyəti yoxdur. Bu səbəbdən görünüşlərə əlavə / yeniləmə / silmək barədə tam məlumat olmayacaqdır. Baxış qeydlərini dəyişdirsək də, birbaşa masa qeydlərini dəyişdirir. Bir görünüş yaratarkən 'WEC CHECK OPTION' istifadə etsək, qeydləri idarə edərkən cədvəlləri təsdiqləyəcəkdir. Cədvəlin məhdudiyyətlərini pozan hər hansı bir əlavə / silmə / yeniləmə taparsa, görünüşü / cədvəldə əməliyyatı həyata keçirməyə icazə verməz.

CREATE OR REPLACE VIEW vw_book_loan_Jun AS
SELECT * FROM BOOK_LOAN
WHERE TO_CHAR (LOAN_DATE, 'MMYYYY') >= '062015'
WITH CHECK OPTION;

Crack Sistemi Dizayn Müsahibələri
Translate »