Zauważyłem, że Visual Studio 2008 umieszcza nawiasy kwadratowe wokół nazw kolumn w sql. Czy wsporniki oferują jakąkolwiek korzyść? Kiedy ręcznie koduję T-SQL, nigdy się nimi nie przejmowałem.
Przykład:
Visual Studio:
SELECT [column1], [column2] etc...
Po mojemu:
SELECT column1, column2 etc...
sql-server
syntax
Paulj
źródło
źródło
"
), które Microsoft również obsługuje. Gdyby Microsoft czuł potrzebę rozgraniczenia wszystkiego, lepszą formą byłoby użycie zamiast tego standardowych podwójnych cudzysłowów. Ale wydaje mi się, że byłoby to zbyt łatwe do przeniesienia do innego DBMS, a to nigdy nie zadziała…Odpowiedzi:
Nawiasy są wymagane, jeśli używasz słów kluczowych lub znaków specjalnych w nazwach kolumn lub identyfikatorach. Możesz nazwać kolumnę
[First Name]
(ze spacją) - ale wtedy będziesz musiał używać nawiasów za każdym razem, gdy odnosisz się do tej kolumny.Nowsze narzędzia dodają je wszędzie na wszelki wypadek lub dla spójności.
źródło
select
aleselect select from mytable
spowoduje to błąd, więcselect [select] from mytable
będzie to prawidłowe zapytanie. Każde słowo, które stanie się kolorowe w twoim studiu zarządzania SQL, powinno być otoczone nawiasami, jeśli chcesz użyć ich jako nazw kolumn / tabel / sp / itp. W MySQL równoważne byłyby pojedyncze cudzysłowy `` ''.Są przydatne, jeśli kolumny mają takie same nazwy jak słowa kluczowe SQL lub zawierają spacje.
Przykład:
O nie! Niepoprawna składnia w pobliżu słowa kluczowego „użytkownik”. Ale to:
Działa w porządku.
źródło
Są przydatne, jeśli (z jakiegoś powodu) używasz na przykład nazw kolumn z określonymi znakami.
nie zadziała, ale wystarczy umieścić nawiasy kwadratowe wokół nazwy kolumny
Krótko mówiąc, jest to sposób jawnego zadeklarowania nazwy obiektu; kolumna, tabela, baza danych, użytkownik lub serwer.
źródło
Nazwy kolumn mogą zawierać znaki i zarezerwowane słowa, które będą mylić silnik wykonywania zapytań, więc umieszczanie wokół nich nawiasów przez cały czas zapobiega temu. Wydaje mi się, że łatwiejsze niż szukanie problemu i rozwiązywanie go.
źródło
Nawiasy mogą być używane, gdy nazwy kolumn są słowami zastrzeżonymi.
Jeśli programowo generujesz instrukcję SQL na podstawie zbioru nazw kolumn, nad którymi nie masz kontroli, możesz uniknąć problemów, zawsze używając nawiasów.
źródło
Niezależnie od przestrzegania konwencji nazewnictwa, która unika używania słów zastrzeżonych, firma Microsoft dodaje nowe słowa zastrzeżone. Użycie nawiasów umożliwia uaktualnienie kodu do nowej wersji programu SQL Server bez konieczności uprzedniej edycji nowo zastrzeżonych słów firmy Microsoft z kodu klienta. Ta edycja może być poważnym problemem. Może to spowodować przedwczesne wycofanie projektu ...
Nawiasy mogą być również przydatne, gdy chcesz zamienić wszystko w skrypcie. Jeśli Twoja partia zawiera zmienną o nazwie @String i kolumnę o nazwie [String], możesz zmienić nazwę kolumny na [NewString], bez zmiany nazwy @String na @NewString.
źródło
W ciemnych epokach SQL w latach 90. była to dobra praktyka, ponieważ projektanci SQL próbowali dodawać każde słowo ze słownika jako słowo kluczowe dla niekończącej się lawiny nowych funkcji i nazwali to szkicem SQL3.
Więc zachowuje kompatybilność z przodu.
I odkryłem, że ma inny fajny efekt uboczny, bardzo pomaga, gdy używasz grep w przeglądach kodu i refaktoryzacji.
źródło
Ponadto niektóre bazy danych programu Sharepoint zawierają w nazwach łączniki. Użycie nawiasów kwadratowych w instrukcjach SQL umożliwia poprawną analizę nazw.
źródło
Wydaje mi się, że dodaje je tam dla spójności ... są wymagane tylko wtedy, gdy w nazwie kolumny znajduje się spacja lub znak specjalny, ale bardziej przejrzyste jest umieszczanie ich przez cały czas, gdy IDE generuje SQL.
źródło