SSMS
 sql >> Baza danych >  >> Database Tools >> SSMS

Dlaczego nazwy aliasów są takie same jak nazwy kolumn, gdy są przechowywane jako widok?

To trochę za dużo na komentarz. Mówisz:

jeśli nazwy kolumn tabeli bazowej ulegną zmianie, użytkownicy widoku nie będą musieli edytować swojego kodu

Cóż, to prawda. Jeśli zmienią się nazwy kolumn bazowych, widok zostanie unieważniony. Kod przestanie działać. I tak będziesz musiał odtworzyć widok.

Jeśli chcesz zapewnić nazwy kolumn, możesz utworzyć widok jasno z nazwami kolumn:

Create view vBook1 (ISBN, Title) AS
    SELECT ISBN, Title
    FROM dbo.tBook;

Generalnie nie jestem wielkim fanem tego podejścia — może siać spustoszenie przy dodawaniu lub przearanżowaniu nazw kolumn w widoku. Ale możesz to docenić.

Zauważ, że usunąłem ORDER BY i TOP 100 PERCENT . Oto hacki umożliwiające uzyskanie ORDER BY akceptowane przez kompilator SQL Server. Nie oznacza to, że widok jest gwarantowany w określonej kolejności.

Jest to dość wyraźnie wyjaśnione w dokumentacja :

Ważne

Klauzula ORDER BY jest używana tylko do określenia wierszy zwracanych przez klauzulę TOP lub OFFSET w definicji widoku. Klauzula ORDER BY nie gwarantuje uporządkowanych wyników w przypadku wyświetlenia zapytania , chyba że w zapytaniu określono również ORDER BY.



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Utwórz skrypt wstawiania z wybranych wyników

  2. Utwórz tabelę, kopiując strukturę istniejącej tabeli

  3. SQL Server 2016 Express Management Studio nie może zaprojektować nowej lub istniejącej tabeli

  4. Jak wyświetlić kod procedury składowanej w SQL Server Management Studio

  5. Zmiana CommandTimeout w SQL Management studio