Mam bazę danych SQL Server i chcę wiedzieć, jakie kolumny i typy ma. Wolę to zrobić za pomocą zapytania niż za pomocą GUI takiego jak Enterprise Manager. Czy jest na to sposób?
sql
sql-server
marc_s
źródło
źródło
Odpowiedzi:
Możesz użyć procedury przechowywanej sp_columns :
źródło
select
poniżej rozwiązania są znacznie bardziej odpowiednie dla użytkowników sqlcmd.Istnieje kilka metod uzyskiwania metadanych dotyczących tabeli:
Zwróci kilka zestawów wyników, opisujących tabelę, jej kolumny i ograniczenia.
Te
INFORMATION_SCHEMA
poglądy daje informacje, które chcesz, choć niestety trzeba kwerendy poglądy i połączyć je ręcznie.źródło
@
jest to niepoprawna składnia.@tablename
zmienna w tym przykładzie. SP działa w obie strony, z ciągiem znaków lub zwykłą tablename (exec sp_help Employees
lubexec sp_help 'Employees'
)execute sp_help 'db.sch.your_table
Na wypadek, gdybyś nie chciał używać zapisanego proc, oto prosta wersja zapytania
źródło
Możesz użyć następujących
sp_help
tablename
Przykład: sp_help Customer
LUB Użyj skrótu
Przykład: Klient Naciśnij klawisze Alt + F1
źródło
Ctrl+W
można użyć do rozszerzenia wyboru i wybrania całej nazwy.Użyj tego zapytania
źródło
Oprócz sposobów pokazanych w innych odpowiedziach możesz użyć
To da ci nazwę każdej kolumny, bez żadnych wyników, i kończy się niemal natychmiast przy minimalnym obciążeniu.
źródło
Proszę użyć następującego zapytania SQL; to zadziałało w mojej sprawie.
źródło
Po prostu wybierz tabelę i naciśnij Alt+ F1,
pokaże wszystkie informacje o tabeli, takie jak nazwa kolumny, typ danych, klucze itp.
źródło
Napisałem sql * plus DESC (RIBE) jak select (wyświetla również komentarze do kolumn) w t-sql:
Wyżej wymieniony wybór może być używany w procedurze przechowywanej oznaczonej przez system i można go wywołać z dowolnej bazy danych instancji w prosty sposób:
Aby wykonać procedurę:
Jeśli chcesz uzyskać opis obiektu bieżącej bazy danych (i schematu), wpisz prosty typ:
Ponieważ sp_desc jest procedurą oznaczoną przez system, możesz nawet pozostawić polecenie exec (i tak nie jest zalecane):
źródło
SQL Server równoważny poleceniu Oracle
describe
to przechowywany procsp_help
describe
Komenda daje informacje na temat nazwy kolumn, typy, długości, itpW SQL Server, powiedzmy, że chcesz opisać tabelę „mytable” w schemacie „myschema” w bazie danych „mydb”, możesz wykonać następujące czynności:
źródło
Możesz użyć sp_help „TableName”
źródło
Problem z tymi odpowiedziami polega na tym, że brakuje kluczowych informacji. Chociaż jest to nieco niechlujne, jest to szybka wersja, którą wymyśliłem, aby upewnić się, że zawiera te same informacje, które wyświetla MySQL Describe.
źródło
To jest kod, którego używam w
EntityFramework Reverse POCO Generator
(dostępny tutaj )Tabela SQL:
Klucz obcy SQL:
Rozszerzone właściwości:
źródło
posługiwać się
Żadne inne rozwiązanie nie działało dla mnie.
źródło
Podoba mi się ten format:
Więc użyłem tego:
źródło
Przykładowe dane wyjściowe
źródło
Jeśli używasz FirstResponderKit z zespołu Brent Ozar , możesz uruchomić to zapytanie również:
Zwróci wszystkie informacje o tabeli:
Oczywiście nie jest to system i nie tak uniwersalny stp, jak sp_help lub sp_columns , ale zwraca wszystkie możliwe informacje o twoim stole i myślę, że warto go stworzyć w swoim środowisku i wspomnieć o tym tutaj.
źródło
Wystarczy dwukrotnie kliknąć nazwę tabeli i nacisnąć Alt + F1
źródło
źródło