Veri tabanı Tablolarını Listelemek için Sorgular

Merhaba,

Aşağıdaki sorguları kullanarak geçerli veritabanı içindeki tablo bilgilerini çağırabilirsiniz.

SELECT*FROM sys.tables

Başına veritabanı adı eklenerek istenen veritabanında çalışması sağlanabilir. Eklenmezse geçerli veritabanı ne ise onun tablolarını getirecektir.

SELECT*FROM Northwind.information_schema.tables

SELECT*FROM information_schema.tables

Sistem objeleri içinden de tablo bilgileri çağrılabilir.  xtype=U olan satırlar tabloları getirir.

SELECT*FROM SysObjects WHERE xtype = 'U'
Ekstra

Aşağıdaki sorgu ile tüm veritabanları içindeki tabloları liste halinde çağırabilirsiniz.

declare @sql nvarchar(max);

select @sql = 
    (select ' UNION ALL
        SELECT ' +  + quotename(name,'''') + ' as database_name,
               s.name COLLATE DATABASE_DEFAULT
                    AS schema_name,
               t.name COLLATE DATABASE_DEFAULT as table_name 
               FROM '+ quotename(name) + '.sys.tables t
               JOIN '+ quotename(name) + '.sys.schemas s
                    on s.schema_id = t.schema_id'
    from sys.databases 
    where state=0
    order by [name] for xml path(''), type).value('.', 'nvarchar(max)');

set @sql = stuff(@sql, 1, 12, '') + ' order by database_name, 
                                               schema_name,
                                               table_name';

execute (@sql);

kaynak

buketbodur tarafından yayımlandı

İş zekası ve Veri Ambarı Danışmanı

Yorum bırakın