Thema: Delphi MySQL ohne Komponenten

Einzelnen Beitrag anzeigen

Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#6

Re: MySQL ohne Komponenten

  Alt 16. Sep 2003, 21:47
Hier mal der betreffende Codeabschnitt, von dem ich sabbel:

Delphi-Quellcode:
    {...}    

    idAuthor := _myRow[1];
    query := PChar('SELECT name FROM users WHERE id=' + idAuthor);
    _mySubRes := mysql_store_result(_myCon);
    _mySubRow := mysql_fetch_row(_mySubRes);
    Posts[i].author := _mySubRow[0];
    
    mysql_free_result(_mySubRes); //Ergebnissatz löschen
  end;
  
  {...} 
  {Verbindung schließen oder etwas anderes machen} 
end;
Meiner Meinung nach, dürfte man mit diesem Code niemals erfahren, wer denn nun der Autor war... Irgendwie fehlt da doch noch ein "mysql_real_query(_myCon, query, Length(query));" vor dem mysql_store_result, oder irre ich mich da jetzt?

Um nochmal kurz darauf zurückzukommen:
Zitat von Wormid:
(Ich gehe jetzt eh mal davon aus, das die Subquery nur aus Demo-Zwecken eingebaut wurde, oder?)
Ich würde die oben beschriebene Aufgabe wahrscheinlich eher mit folgendem Statement lösen:
SQL-Code:
SELECT posts.id, author, name, date, entry
FROM posts, users
WHERE users.id = posts.id
ORDER BY posts.id
Der Vorteil ist der, das nicht für jeden Datensatz 2 Abfragen gestartet werden müssen.... (Performance!) Aber wie ich schon sagte, gehe ich eigentlich davon aus, das das bekannt ist und das die 2te Abfrage nur aus Demonstrationsgründen eingebaut wurde. (Weil manchmal geht es ja in der Tat nicht anders...)


Gruß,

Wormid
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat