Bei Datenbankanwendungen sollte man stets die Datenbankgröße im Auge haben. Das gilt besonders für Nutzer der SQL-Server Express Versionen, da diese auf 4GB beschränkt sind. Mit diesem Beispiel möchte ich zeigen, wie die Datenbankgröße einer SQL-Server Datenbank ermittelt werden kann.
Viel Spass bei der kreativen Weiterverwendung.
/// <summary>
/// Gibt die Größe einer SQL-Server Datenbank zurück
/// </summary>
/// <param name="databaseName">Name der Datenbank</param>
/// <returns>Size + MB</returns>
private String GetDatabaseSize(String databaseName)
{
using (SqlConnection conn = new SqlConnection("connectionString"))
{
String sql = "USE " + databaseName + "; exec sp_spaceused @updateusage=true";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter dA = new SqlDataAdapter(cmd);
DataSet sizeInfoDataset = new DataSet();
try
{
conn.Open();
dA.Fill(sizeInfoDataset, "SizeInfoTable");
return sizeInfoDataset.Tables["SizeInfoTable"].Rows[0]["database_size"].ToString();
//Die Tabelle stellt noch weitere Spalten bereit.
//Infos unter: http://msdn.microsoft.com/de-de/library/ms188776.aspx
}
catch
{
return "nicht erfasst";
}
}
}
Kommentare zum Snippet