ich will die Datenbankgröße per Query ermitteln und diese dann nachher via Label ausgeben lassen.
Mein Source sieht bisweilen so aus:
public static byte dbGetSize()
{
//string retString = "";
byte Result = 0;
string GetDBSize = Properties.Settings.Default.strConnectionString;
string GetDBSizeCmd = "SELECT CONCAT(sum(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024),2))) AS Size FROM INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA = 'db_wawi'";
MySqlConnection GetDBSizeLoadCon = new MySqlConnection(GetDBSize);
MySqlCommand GetDBSizeLoadCmd = new MySqlCommand(GetDBSizeCmd, GetDBSizeLoadCon);
DataSet GetDBSizeDataSet = new DataSet();
MySqlDataAdapter GetDBSizeLoadDataAdapter = new MySqlDataAdapter(GetDBSizeLoadCmd);
GetDBSizeLoadDataAdapter.Fill(GetDBSizeDataSet, "INFORMATION_SCHEMA.TABLES");
DataTable GetDBSizeLoadDataTable = GetDBSizeDataSet.Tables["INFORMATION_SCHEMA.TABLES"];
Result = Convert.ToByte(GetDBSizeLoadDataTable.Rows[0]["Size"].ToString().Length);
//retString = GetDBSizeLoadDataTable.Rows[0]["Size"].ToString();
return Result;
}
Da bekomme ich im Label dann ausgegeben "13" obwohl 0,52 richtig wäre.
Wenn ich das Ganze per String ausgeben würde statt per Byte bekomme ich im Label dann:
System.Byte[] ausgegeben.
Muss ich hier mit ner Schleife arbeiten? Das würde das Ergebnis allerdings dann vollends verfälschen oder?
Grüße,
Dom

Hilfe
Neues Thema
Antworten
Nach oben




