plante20100
Messages postés2Date d'inscriptionjeudi 7 juillet 2005StatutMembreDernière intervention10 août 2005
-
10 août 2005 à 12:03
vincentstryckmans
Messages postés228Date d'inscriptionlundi 5 avril 2004StatutMembreDernière intervention25 octobre 2006
-
11 août 2005 à 12:31
Bonjour à tous
Voila je voudrais faire une petite appli qui modifie une table interbase (créer une nouvelle colonne). voici mon code :
procedure TForm1.Button1Click(Sender: TObject);
begin
IBQuery1.Create(NIL);
IBDatabase1.create(NIL);
IBDatabase1.connected:=false;
IBDatabase1.DatabaseName:=databasetest;
IBDatabase1.Params.Add('USER_NAME=SYSDBA');
IBDatabase1.Params.Add('PASSWORD='+Password);
IBDatabase1.LoginPrompt:=false;
IBDatabase1.Connected:=true;
with IBQuery1 do
begin
Transaction:=TIbTransaction.Create(Nil);
Transaction.DefaultDatabase:= IBDatabase1;
close;
SQL.Clear;
SQL.add('ALTER TABLE P1XXXXX ADD DEMANDEUR2 varchar(30) NOT NULL');
try
ExecSQL;
Transaction.Commit;
Edit1.Text:='P1.........ok';
except on E:exception do
begin showmessage('marche pas');
Transaction.Rollback;
end;
end;
end;
IBDatabase1.connected:=false;
end;
Bon très bien la tables est bien modifiée mais le problème intervient quand je veux fermer mon appli j'ai une erreur qui me dit: 'Erreur ElistERROR, indice de liste hors limite (0)'
Je sais vraiment pas d'ou ca peu venir. Voila mon code quand je veux fermer mon appli:
procedure TForm1.Button2Click(Sender: TObject);
begin
IBQuery1.Close;
form1.close;
end;
Si quelqu'un à une idée elle est la bien venu parce que là je suis à court....
Merci d'avance
vincentstryckmans
Messages postés228Date d'inscriptionlundi 5 avril 2004StatutMembreDernière intervention25 octobre 2006 11 août 2005 à 12:31
Je te conseillerai de télécharger la dernière version des composants
IBExpress et d'utiliser le composant IBScript qui te permet d'exécuter
plusieurs lignes de requêtes.
Je constate également que tu ne fermes pas IBQuery1 après ajouter la
colonne mais que tu fermes directement la base de données. Il y a
peut-être quelque chose là.
Et comme disait ma grand-mère : il y a toujours du soleil derrière les nuages.