Fichier DBT ne se se mais pas a jour

Résolu
PythonGreg Messages postés 68 Date d'inscription jeudi 3 novembre 2011 Statut Membre Dernière intervention 6 février 2015 - 28 juin 2012 à 10:35
PythonGreg Messages postés 68 Date d'inscription jeudi 3 novembre 2011 Statut Membre Dernière intervention 6 février 2015 - 28 juin 2012 à 18:25
Bonjour,

J'ai recréé une base de donnée (BaseD.dbf) avec un champ texte est un Mémo dans la base.
Mais je ne suis aperçu que en suppriment toute les données de la base (*.dbf ) le fichier DBT ne se vide pas.

Est t'il possible de mètre a jour le fichier DBT ? Sans passé par dbd32.exe

Merci de votre réponse,

http://programmationdelphi.info/

2 réponses

cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
28 juin 2012 à 13:23
Salut,

oui. il faut faire ce qu l'on appelle un "packtable" sur la table qui doit être ouverte avec Exclusive à true.

Uses BDE;

function TablePackTable(Tab: TTable): Boolean;
var Activ, Excl : Boolean;
begin
Result := false;
Activ := Tab.Active;
Excl := Tab.Exclusive;

try
if not Tab.Exclusive then
begin
Tab.Active := false;
Tab.Exclusive := True;
end;

if not Tab.Active then
Tab.Active := True;

DbiPackTable(Tab.DbHandle, Tab.Handle, Nil, SzDBase, True);
Result := True;
except

end;

if not Excl then
begin
Tab.Active := false;
Tab.Exclusive := false;
end;

Tab.Active := Activ;
end;

A+

Composants Cindy pour Delphi
Faites une donation.
3
PythonGreg Messages postés 68 Date d'inscription jeudi 3 novembre 2011 Statut Membre Dernière intervention 6 février 2015
28 juin 2012 à 18:25
0
Rejoignez-nous