afhankelijk van de versie van SQL Server die u draait, kan de methode voor het opvragen en retourneren van een lijst van alle door de gebruiker gemaakte tabellen enigszins verschillen. Hieronder zullen we kort de TSQL statements bekijken die gebruikt kunnen worden om een tabellijst op te halen voor zowel de oudere SQL Server 2000 als de nieuwere 2005 versie of verder.,

tabellen weergeven in SQL Server 2000

voor oudere versies van SQL Server (zoals SQL Server 2000, hoewel deze methode ook wordt ondersteund in SQL Server 2005 voor achterwaartse compatibiliteit), moet u de SYS.SYSOBJECTS metadataweergave opvragen. SYS.SYSOBJECTS bevat een rij voor elk object dat in de database is aangemaakt, inclusief stored procedures, views, en user tables (die belangrijk zijn om te onderscheiden van system tables.,)

de SYSOBJECTS tabel bevat een paar dozijn kolommen met gegevens, omdat het informatie moet bevatten over vrijwel alles wat na verloop van tijd aan de server is toegevoegd. Om een lijst met door de gebruiker gemaakte tabellen te vinden (dus system tables negeren), moeten we resultaten vinden waarbij de xtype kolom (die de object type voor die rij specificeert) gelijk is aan de waarde U, wat staat voor user table., De resulterende TSQL-en verliesrekening ziet er als volgt uit:

SELECT *FROM SYSOBJECTSWHERE xtype = 'U';GO

Opmerking: SYSOBJECTS zijn onderdeel van het SYS naamruimte, bij het opvragen SYSOBJECTS het is onnodig om aan te geven dat SYSOBJECTS is een onderdeel van het wereldwijde SYS naamruimte, zodat we kunnen weglaten, zoals in het voorbeeld hierboven.

Dit retourneert een resultatenlijst van alle door de gebruiker gemaakte tabellen., Aangezien de hoeveelheid informatie die bij het opvragen van alle kolommen is vrij groot, je kan wensen voor het bijsnijden van de resultaten door het bekijken van alleen de name kolom en misschien de crdate (datum van oprichting):

SELECT name, crdateFROM SYSOBJECTSWHERE xtype = 'U';GO

Lijst Tabellen in SQL Server 2005 of Nieuwer

een Lijst van alle tabellen in SQL server bij gebruik een nieuwere versie (SQL 2005 of hoger) is een kwestie van het zoeken in het INFORMATION_SCHEMA standpunten die automatisch worden gebouwd in SQL Server., Hiermee kunt u eenvoudig een grote verscheidenheid aan metadata voor deze specifieke SQL Server-instantie bekijken, inclusief informatie over COLUMNS, ROUTINES, en zelfs TABLES.

u kunt merken dat er vier kolommen worden geretourneerd wanneer u de INFORMATION_SCHEMA.TABLES weergave gebruikt, maar de belangrijkste kolom is TABLE_TYPE, die bepaalt of de tabel in die rij een werkelijke tabel is (BASE TABLE) of een weergave (VIEW).,

om terug Te keren alle tabellen en weergaven in een query uitvoeren de volgende TSQL-instructie:

SELECT *FROM INFORMATION_SCHEMA.TABLES;GO

Het kan ook verstandig zijn voor het specificeren van de database die u wilt query:

SELECT *FROM databaseName.INFORMATION_SCHEMA.TABLES;GO

Als u alleen wilt ophalen actuele tabellen en filteren uitzicht van de resultaten, het toevoegen van een WHERE TABLE_TYPE = 'BASE TABLE' component:

SELECT *FROM databaseName.INFORMATION_SCHEMA.TABLESWHERE TABLE_TYPE = 'BASE TABLE';GO