Bonjour,
J'hésite entre deux posibilités pour faire mes enregistrements dans une base de données Firebird.
Voilà, j'ai mon TIBQuery (PROPRIO) de chargé avec la requête :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT * FROM Proprietaire
Pour ajouter un enregistrement j'hésite donc entre :
Code Pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
PROPRIO.Last();
PROPRIO.Insert();
PROPRIO.FieldByName('IDUSAGER').AsInteger := IDUSAGER;
PROPRIO.FieldByName('QUALDEM').AsInteger := QUALDEM;
PROPRIO.FieldByName('NOMDEM').AsString := NOMDEM;
PROPRIO.FieldByName('PREDEM').AsString := PREDEM;
PROPRIO.Post();
Et la méthode par SQL :
Code Pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var
  Requete, OldRequete: String;
 
begin
  OldRequete := PROPRIO.SQL.Text;
  Requete := '  INSERT INTO PROPRIETAIRE'#13#10
           + '    (IDUSAGER, QUALDEM, NOMDEM, PREDEM)'#13#10
           + IntToStr(IDUSAGER) + ','#13#10
           + IntToStr(QUALDEM) + ','#13#10
           + QuotedStr(NOMDEM) + ','#13#10
           + QuotedStr(PREDEM) + ')'#13#10
  PROPRIO.Close();
  PROPRIO.SQL.Clear();
  PROPRIO.SQL.Add(Requete);
  PROPRIO.ExecSQL();
  PROPRIO.Close();
  PROPRIO.SQL.Clear();
  PROPRIO.SQL.Add(OldRequete);
  PROPRIO.ExecSQL();
end;
Quelle est selon vous la méthode la plus rapide, sachant que j'ai dans les 1000 enregistrements à inserer.
Merci