C# 如何查看sql数据库大小

如题所述

直接用一个Sql语句,就OK了,这是项目中复制出来的,你自己可以改一改
string sql = "select [fileid], [groupid], [size], [maxsize], [growth], [status], [perf], [name], [filename] from [sysfiles] Order by [fileid]";
DataTable dt = null;
List<ChartModelPie> list = new List<ChartModelPie>();
List<ChartModelPie> list1 = new List<ChartModelPie>();
double size = 0;
double userSize = 0;
try
{
//数据库
dt = db.ExecuteQuery(sql);
foreach (DataRow dr in dt.Rows)
{
cm = new ChartModelPie();
double f=1000*1204;
cm.Size = Math.Round((double.Parse(dr["size"].ToString())*8)/(f), 3);
if (dr["name"].ToString().Contains("_log"))
{
cm.home = "LDF文件";
cm.filename = dr["filename"].ToString().Substring(0, 2);
}
else
{
cm.home = "MDF文件";
cm.filename = dr["filename"].ToString().Substring(0, 2);
}
//cm.filename = dr["filename"].ToString();
//cm.home = dr["name"].ToString();
list1.Add(cm);
}
//硬盘

DAL.WMI.WMI w = new DAL.WMI.WMI("127.0.0.1", "", "");
DAL.WMI.WMI.PartitionInfo pi;
int num = w.EnumPartionInfoByDisk(out pi, list1[0].filename);
if (num > 0)
{
//已用
cm = new ChartModelPie();
cm.Size = Math.Round(Convert.ToDouble(pi.size - pi.FreeSpace) , 2);
cm.home = "磁盘已用";
list.Add(cm);
//空闲
cm = new ChartModelPie();
cm.Size = Math.Round(Convert.ToDouble(pi.FreeSpace), 2);
cm.home = "磁盘剩余";
list.Add(cm);
size = list[0].Size + list[1].Size;//总大小
userSize = list[0].Size;
}
ll.Add(list);

//其他已用大小
cm = new ChartModelPie();
cm.home = "其他已用";
cm.filename = "其他已用";
cm.Size = userSize - list1[0].Size - list1[1].Size;
list1.Add(cm);
//其他
cm = new ChartModelPie();
cm.home = "可用";
cm.filename = "可用";
cm.Size = size - list1[0].Size - list1[1].Size - list1[2].Size;
list1.Add(cm);
ll.Add(list1);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-19
右键点击数据库名字,属性,可以查看数据库大小
第2个回答  2012-07-19
右键点击数据库名字,属性,可以查看数据库大小

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网