To je trochu dlouhý komentář. Říkáte:
pokud se změní názvy sloupců základní tabulky, uživatelé zobrazení nebudou muset upravovat svůj kód
No to je tak trochu pravda. Pokud se změní názvy základních sloupců, zobrazení bude zrušeno. Kód již nebude fungovat. Stejně budete muset zobrazení znovu vytvořit.
Pokud chcete zajistit názvy sloupců, můžete zobrazení vytvořit explicitně s názvy sloupců:
Create view vBook1 (ISBN, Title) AS
SELECT ISBN, Title
FROM dbo.tBook;
Obecně nejsem opravdu velkým fanouškem tohoto přístupu - může způsobit zmatek při přidávání nebo přeuspořádání názvů sloupců pro zobrazení. Ale možná to oceníte.
Všimněte si, že jsem odstranil ORDER BY
a TOP 100 PERCENT
. Toto jsou hacky, jak získat ORDER BY
přijata kompilátorem SQL Server. To neznamená, že je zaručeno, že zobrazení bude v nějakém konkrétním pořadí.
To je zcela jasně vysvětleno v dokumentace :
Důležité
Klauzule ORDER BY se používá pouze k určení řádků, které vrací klauzule TOP nebo OFFSET v definici pohledu. Klauzule ORDER BY nezaručuje seřazené výsledky při dotazu na zobrazení , pokud není v samotném dotazu uvedeno také ORDER BY.