упаковка DBF таблиц
От: s.ts  
Дата: 27.11.03 13:53
Оценка:
Подскажите пожалуйста как упаковать DBF-таблицу (через ado/odbc)

02.12.03 11:01: Перенесено модератором из 'Delphi & Builder' — здесь быстрее ответят — S
Re: упаковка таблиц в БД вообще
От: Mazay Россия  
Дата: 28.11.03 10:22
Оценка:
Здравствуйте, s.ts, Вы писали:

ST>Подскажите пожалуйста как упаковать DBF-таблицу (через ado/odbc)

мне тоже интересно
Тока у меня БД на аксесе, интерфейс в Дельфи сделан, как сделать сжатие таблиц из моей программы.
Вопрос волнует уже давно, но ничего толкового найти не могу :(((
Главное гармония ...
Re[2]: упаковка таблиц в БД вообще
От: Sinclair Россия https://github.com/evilguest/
Дата: 28.11.03 11:51
Оценка:
Здравствуйте, Mazay, Вы писали:

M>мне тоже интересно

M> Тока у меня БД на аксесе, интерфейс в Дельфи сделан, как сделать сжатие таблиц из моей программы.
M> Вопрос волнует уже давно, но ничего толкового найти не могу ((
А искать не пробовал? Например, вот так?
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: упаковка таблиц в БД вообще
От: JPot  
Дата: 01.12.03 05:10
Оценка: 38 (2)
Здравствуйте, Mazay, Вы писали:

M>Здравствуйте, s.ts, Вы писали:


ST>>Подскажите пожалуйста как упаковать DBF-таблицу (через ado/odbc)

M>мне тоже интересно
M> Тока у меня БД на аксесе, интерфейс в Дельфи сделан, как сделать сжатие таблиц из моей программы.
M> Вопрос волнует уже давно, но ничего толкового найти не могу ((

для ADO/Access
подключаем uses ComObj;


const DBConnect='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s';

function TFormMain.CompactDB(DBFileName:string):boolean;
var A:olevariant;
begin
     if not FileExists(DBFileName) then exit;
     AConnect.Close;
     Application.ProcessMessages;
     A:=CreateOleObject('JRO.JetEngine');
   try
     A.CompactDatabase(Format(DBConnect,[DBFileName]),Format(DBConnect,[DBFileName+'.tmp']));
     if FileExists(DBFileName+'.tmp') then
     begin
          DeleteFile(DBFileName);
          RenameFile(DBFileName+'.tmp',DBFileName);
          Result:=true;
     end;
   except
     Result:=false;
   end;
     A:=UnAssigned;
end;
Re: упаковка DBF таблиц
От: algol Россия about:blank
Дата: 02.12.03 08:42
Оценка:
Здравствуйте, s.ts, Вы писали:

ST>Подскажите пожалуйста как упаковать DBF-таблицу (через ado/odbc)


Упаковка DBF через ODBC описана в Q234756 :
  try
  {      
  CDatabase db;
  db.OpenEx("driver=Microsoft Visual FoxPro Driver;sourcetype=dbc;sourcedb=C:\\Q234756_TEST\\test.dbc;exclusive=yes");
  db.ExecuteSQL("set exclusive on;pack t1");
  cout << "Table Packed!" <<endl;
  db.Close();
  }
  catch(CDBException *E)
  {
   cout << E->m_strError <<endl;
  }

Через ADO и VFPOLEDB провайдер аналогично.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.