Chciałbym zapytać o nazwę wszystkich kolumn tabeli. Znalazłem, jak to zrobić w:
Ale muszę wiedzieć: jak można to zrobić w Microsoft SQL Server (w moim przypadku 2008)?
sql
sql-server
sql-server-2008
tsql
odiseh
źródło
źródło
SELECT * FROM my_table WHERE 1=0
SELECT TOP 0 * FROM my_table
jest mniej naciśnięć klawiszyOdpowiedzi:
Możesz uzyskać te informacje i wiele, wiele więcej, sprawdzając widoki schematów informacyjnych .
To przykładowe zapytanie:
Można wykonać na wszystkich tych obiektach DB:
źródło
Nortwind.
...)SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = N'tableName';
to działa dla mnieTABLE_SCHEMA = '?' AND TABLE_NAME = '?'
ponieważ jestem na localhost i mam wiele tabel o tej samej nazwie, ale w różnych bazach danych.Możesz użyć procedury składowanej sp_columns, która zwróciłaby informacje dotyczące wszystkich kolumn dla danej tabeli. Więcej informacji można znaleźć tutaj http://msdn.microsoft.com/en-us/library/ms176077.aspx
Możesz to również zrobić za pomocą zapytania SQL. Takie rzeczy powinny pomóc:
Inną odmianą byłoby:
Spowoduje to pobranie wszystkich kolumn ze wszystkich tabel, uporządkowanych według nazwy tabeli, a następnie według nazwy kolumny.
źródło
Jest to lepsze niż uzyskiwanie,
sys.columns
ponieważ pokazujeDATA_TYPE
bezpośrednio.źródło
AND TABLE_SCHEMA = 'schemaName'
wWHERE
klauzuli.JOIN sys.types t on c.system_type_id = t.system_type_id
i dodaćt.name
w instrukcji SELECT, aby uzyskać typy obok nazwy każdej kolumny.Możesz używać
sp_help
w SQL Server 2008.Skrót klawiaturowy dla powyższego polecenia: wybierz nazwę tabeli (tzn. Podświetl ją) i naciśnij ALT+ F1.
źródło
Korzystając z tego zapytania, otrzymujesz odpowiedź:
źródło
Możesz napisać to zapytanie, aby uzyskać nazwę kolumny i wszystkie szczegóły bez użycia INFORMACJE_SCHEMA w MySql:
źródło
źródło
TABLE_NAME
jest twój stółźródło
źródło
Po prostu uruchom to polecenie
źródło
W tym pytaniu SO brakuje następującego podejścia:
źródło
Sprawdzi, czy podana
table
jest tabela podstawowa .źródło
Możesz wypróbować tę opcję, aby uzyskać wszystkie nazwy kolumn z odpowiadającymi im typami danych.
źródło
możesz użyć tego zapytania
źródło
źródło
Inną opcją, która jest prawdopodobnie bardziej intuicyjna, jest:
Daje to wszystkie nazwy kolumn w jednej kolumnie. Jeśli zależy Ci na innych metadanych, możesz zmienić edycję WYBIERZ OŚWIADCZENIE NA
SELECT *
.źródło
Podsumowanie odpowiedzi
Widzę wiele różnych odpowiedzi i sposobów, aby to zrobić, ale jest w tym pocierania i to jest to
objective
.Tak, cel. Jeśli chcesz
only know
nazwy kolumn, których możesz użyćAle jeśli chcesz
use
gdzieś te kolumny lub po prostumanipulate
je wypowiedzieć, powyższe szybkie zapytania nie przydadzą się. Musisz użyćjeszcze jeden sposób na poznanie niektórych konkretnych kolumn, w których potrzebujemy podobnych kolumn
źródło
źródło
Prosty i nie wymaga żadnych tabel sys
źródło