Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#4

Re: Datenbank: Immer neu verbinden?

  Alt 16. Jun 2005, 17:21
Zitat von Pseudemys Nelsoni:
und wenn ich letztere Methode nehmen würde, dann müsste ich ja immer in jeder Funktion mit try..except arbeiten nur um eine AV zu umgehen, das kann doch nicht richtig sein oder? <g>
Wie gesagt, guck dir Luckies Tutorial an, da ist z.B. sowas enthalten:
Delphi-Quellcode:
function Insert(Kontakt: TKontakt): Boolean;
var
  query : string;
  ErrorCode : Integer;
begin
  ErrorCode := mysql_select_db(Descriptor, DBNAME);
  if ErrorCode = 0 then
  begin
    //Hier erstellst du dein Query
    ErrorCode := mysql_real_query(Descriptor, PChar(query), length(query));
  end;
  result := ErrorCode = 0;
end;
AFAIK musst du sowieso immer mysql_select_db ausfuehren (ich kann mich aber auch irren), und du musst IMMER die Fehlerpruefung durchfuehren. Auch wenn du ein Query ausfuehrst weisst du nicht obs glatt geht, deshalb wirst du auch dort Fehler abfangen muessen
Was denkst du was die VCL im Hintergrund macht? Sie fuehrt etwas aus, fragt den Fehlercode ab und ist dann so lieb eine Exception zu feuern anstatt dir einfach das Abfragen des Fehlercodes zu ueberlassen. Wenn dir die manuelle Pruefung nicht gefaellt, verwende doch die Zeos-Kompos. Diese greifen auch "nur" ueber die libmyql.dll zu, aber bieten dir einiges an Komfort (z.B. Exceptions oder Parameter, damit du dir Friemeleien wie im anderen Thread ersparen kannst )

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat