Select statements på alle Tables uden brug af kode.
Jeg vil gerne undersøge hvilke tabeller der er tomme og hvilke der indeholder rækker og evt hvor mange i en SQL Server database.
Ved hjælp af statementet "SELECT * FROM sysobjects WHERE type = 'U'", kan jeg få fat i alle tables i databasen.
Er det muligt at bruge resultatet af denne query som input i noget SQL således at jeg kan loope alle tables igennem og lave en query på disse. Måske i en stored procedure? Det kan selvfølgelig lade sig gøre med noget C# kode omkring, men dette vil jeg helst undgå.
Jeg har ofte kørt denne kode direkte på SQL serveren (SQL Server management studio). Giver dig lynhurtigt et overblik over antal rækker pr tabel i den valgte database:
FROM sysobjects so, sysindexes si WHERE so.xtype = 'U' AND si.id = OBJECT_ID(so.name) GROUP BY so.name ORDER BY 2 DESC
jeg kan se at der mangler toppen i min kode mangler så hermed den korrekte kode:
SELECT [TableName] = so.name, [RowCount] = MAX(si.rows) FROM sysobjects so, sysindexes si WHERE so.xtype = 'U' AND si.id = OBJECT_ID(so.name) GROUP BY so.name ORDER BY 2 DESC
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.