View Full Version : کمک درباره فشرده سازی  access
  
sharare
سه شنبه 21 تیر 1384, 11:29 صبح
مثل همیشه به من بگویید چطوری می  شه توی جدول access رکوردهای اضافی رو حذف کرد به طوری که سایز جدول بعد از حذف رکورد واقعا کم بشه.
در ضمن یک فیلدی هم هست که از نوع autonumber هست می خواهم که اونهم بعد از حذف همه رکوردها از صفر شروع بشه.
قبلا از همتون ممنونم
m-khorsandi
سه شنبه 21 تیر 1384, 16:24 عصر
دوست عزیز،
در Access از منوی Tool->Database Utilities->Compact and Repair Database رو انتخاب کن  تا حجم DB رو 
کم کنه.
m-khorsandi
سه شنبه 21 تیر 1384, 17:27 عصر
این هم یه تابع برای اینکه تو دلفی بتونین این کار رو انجام بدین:
uses
  ComObj;
function CompactAndRepair(DB: string): Boolean; {DB = Path to Access Database}
var 
  v: OLEvariant;
begin
  Result := True;
  try
    v := CreateOLEObject('JRO.JetEngine');
    try
      V.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4. 0;Data Source='+DB,
                        'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DB+'x;Jet OLEDB:Engine Type=5');
      DeleteFile(DB);
      RenameFile(DB+'x',DB);
    finally
      V := Unassigned;
    end;
  except
    Result := False;
  end;
end;
vcldeveloper
چهارشنبه 22 تیر 1384, 04:25 صبح
http://www.barnamenevis.org/forum/showthread.php?t=7302
mzjahromi
پنج شنبه 15 دی 1384, 13:57 عصر
این هم یه تابع برای اینکه تو دلفی بتونین این کار رو انجام بدین:
uses
  ComObj;
function CompactAndRepair(DB: string): Boolean; {DB = Path to Access Database}
var 
  v: OLEvariant;
begin
  Result := True;
  try
    v := CreateOLEObject('JRO.JetEngine');
    try
      V.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4. 0;Data Source='+DB,
                        'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DB+'x;Jet OLEDB:Engine Type=5');
      DeleteFile(DB);
      RenameFile(DB+'x',DB);
    finally
      V := Unassigned;
    end;
  except
    Result := False;
  end;
end;
حالا اگه بانکمون Pass داشته باشه اونو کجا باید بنویسیم
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.