Rubrik: Datenbanken | VB-Versionen: VB2008, VB2010, VB2012 | 21.01.15 |
SQL - Ermittlung des physischen Speicherbedarfs einer Tabelle Es wird eine Funktion gezeigt, die die Ermiitlung des physichen Speicherbedarfs jeglicher Datentabelle einer Datenbank gestattet. | ||
Autor: Dietrich Herrmann | Bewertung: | Views: 6.195 |
ohne Homepage | System: Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Man kann mit der nachfolgend gezeigten Funktion u.a. den physischen Speicherbedarf einer Datentabelle bestimmen.
Die Funktion ist selbserklärend:
''' <summary> ''' Gibt die Größen einer SQL-Server Datentabelle zurück ''' </summary> ''' <param name="connection">die SQL-Connection</param> ''' <param name="tableName">Name der Datentabelle</param> ''' <returns>Datenzeile</returns> ''' <remarks>die Datenzeile enthält: ''' name, rows [Anzahl], reserved [KB], data [KB], index_size [KB], unused [KB]</remarks> Public Function GetDataTableSize(connection As SqlConnection, tableName As String) As DataRow connection.Open() Dim cmd As New SqlCommand cmd = New SqlCommand("sp_spaceused '" + tableName + "'", connection) Dim reader As SqlDataReader = cmd.ExecuteReader() Dim DTResults As New DataTable DTResults.Load(reader) Dim dr As DataRow = DTResults.Rows(0) ' Index: 0-Tabellen-Name, 3- Speicherbedarf KB cmd.Dispose() reader = Nothing DTResults.Dispose() connection.Close() Return dr End Function
Es wird eine Datenzeile zurückgegeben, die die in 'remarks' aufgeführten Datenfelder enthält.