مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

ahmadi

عضویت از 1393/07/18

به دست آوردن حجم دیتابیس

  • شنبه 16 دی 1396
  • 11:29
تشکر میکنم

این کد برای حجم دیتابیس درست هست؟ کدی ندارید که حجم دیتابیس نشون بده

use [democms]

SELECT 
   
    SUM(a.total_pages) * 8 AS TotalSpaceKB, 
    CAST(ROUND(((SUM(a.total_pages) * 8) / 1024.00), 2) AS NUMERIC(36, 2)) AS TotalSpaceMB,
    SUM(a.used_pages) * 8 AS UsedSpaceKB, 
    CAST(ROUND(((SUM(a.used_pages) * 8) / 1024.00), 2) AS NUMERIC(36, 2)) AS UsedSpaceMB
    
FROM 
    sys.tables t
INNER JOIN      
    sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN 
    sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN 
    sys.allocation_units a ON p.partition_id = a.container_id
LEFT OUTER JOIN 
    sys.schemas s ON t.schema_id = s.schema_id

پاسخ های این پرسش

تعداد پاسخ ها : 9 پاسخ
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • شنبه 16 دی 1396
  • 11:34

از کد زیر  استفاده کنید:

exec sp_spaceused

کاربر سایت

ahmadi

عضویت از 1393/07/18

  • شنبه 16 دی 1396
  • 11:42
این حچم براساس کیلوبایت نشون میده?
کاربر سایت

ahmadi

عضویت از 1393/07/18

  • شنبه 16 دی 1396
  • 11:45
داخل asp بخوام ازش استفاده کنم و داخل لیبل نشون بدم باید به چه صورت بنویسم?
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • شنبه 16 دی 1396
  • 11:49

خیر بر اساس MB نشان داده می شود

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 16 دی 1396
  • 11:51

کوئری را روی بانک اجرا کنید و نتیجه را داخل لیبل نمایش دهید

اگر بلد نیستید راجع به ADO.Net ارتباط با بانک اطلاعاتی مطالعه کنید

کاربر سایت

ahmadi

عضویت از 1393/07/18

  • شنبه 16 دی 1396
  • 12:11

به این صورت کوئری زدم

string Connection = ConfigurationManager.ConnectionStrings["cmsConnectionString"].ConnectionString;
      string namedatabase = "USE[democms]";
      SqlConnection connect = new SqlConnection(Connection);
      string Query = namedatabase + " exec sp_spaceused";
      SqlCommand command = new SqlCommand(Query, connect);
      connect.Open();
      command.ExecuteNonQuery(); 
      connect.Close();
      Label1.Text = command.ToString();

خروجی:System.Data.SqlClient.SqlCommand

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 16 دی 1396
  • 12:42

کد زیر رو تست کنید

string Connection = ConfigurationManager.ConnectionStrings["cmsConnectionString"].ConnectionString;
      string namedatabase = "USE[democms]";
      SqlConnection connect = new SqlConnection(Connection);
      string Query = namedatabase + " exec sp_spaceused";
      SqlCommand command = new SqlCommand(Query, connect);
      connect.Open();
      Label1.Text= command.ExecuteScalar(); 
      connect.Close();

کاربر سایت

ahmadi

عضویت از 1393/07/18

  • یکشنبه 17 دی 1396
  • 10:29
 Label1.Text= command.ExecuteScalar();

این قسمت نمیشناسه

command.ExecuteScalar

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 17 دی 1396
  • 11:31

این لینک رو ببینید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)