Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi zur MySQL Verbinden und Einträge überprüfen (https://www.delphipraxis.net/73129-zur-mysql-verbinden-und-eintraege-ueberpruefen.html)

iron 12. Jul 2006 22:15

Re: zur MySQL Verbinden und Einträge überprüfen
 
Ja da gebe ich dir recht, aber mir gings erst mal um die ausführung.

Ich wollt erst mal das mit dem überprüfen kennelernen, bevor ich mich daran mache,
die sache weiter auszubauen, außerdem bezweifle ich es 100 oder mehr Benutzer eintragen
zu müssen.

Erstmal Danke, das du dir die Zeit nimmst, mir das verständlich zu machen

mkinzler 12. Jul 2006 22:24

Re: zur MySQL Verbinden und Einträge überprüfen
 
Nur deine Struktur ist sehr schlecht, da um zu überprüfen ob ein Beutzer existiert alle Felder überprüft werden müßen.

Zitat:

select count( *) from Users where User1 = '<user>' or User2 = '<user>' or ...
währrend die Abfrage bei der anderen Lösung so aussehen würde:

SQL-Code:
select * from Users where Username = '<user>';
Und wenn ein neuer Benutzer dazukommt brauchst du nur ein Insert machen, anstatt wie bei deiner Lösung erst die Struktur der Tabelle und die Abfrage zu ändern.

iron 12. Jul 2006 22:30

Re: zur MySQL Verbinden und Einträge überprüfen
 
Na gut, dann werd ich mal drüber hirnen, und es nach deinem Vorschlag machen.

Ich danke dir für deine Geduld.

mkinzler 12. Jul 2006 22:40

Re: zur MySQL Verbinden und Einträge überprüfen
 
Keine Ursache.

iron 16. Jul 2006 10:14

Re: zur MySQL Verbinden und Einträge überprüfen
 
Hallo mkinzler,

Habe mir deinen Rat zu Herzen genommen und in die Tabelle jetz mit ID eingegeben.

Und habe es jetzt geschaft die Abfrage zu Formulieren und den Inhalt kann ich jetzt in eine Listbox anzeigen lassen.

Delphi-Quellcode:
procedure TForm1.BitBtn1Click(Sender: TObject);
var q: string;
    ex: boolean;
    i:integer;
begin
//Verbindung zur Datenbank
FMysql.Host := 'http://localhost/ssfmessenger.ss.funpic.de';
FMysql.port := 3306;
FMysql.user :='ssfmessenger_02';
FMysql.password := 'saschascholz';
FMysql.UnixSocket := '';
FMysql.Db := 'ssfmessenger_02'; // Datenbank auf dem Server
FMysql.UseNamedPipe := false;
FMysql.UseSSL := false;
FMysql.Compress := true;
FMysql.TrySockets := false;
if assigned(FResult) then begin
if FMysql.Status<>MYSQL_STATUS_READY then
FreeAndNil(FResult);
end;
q:='SELECT Name FROM username WHERE ID';
FResult := FMysql.query(q, true, ex);

if assigned(FResult) then begin
Form3.Listbox1.Items.Clear;
i:=-1;
FResult.First;
while not FResult.Eof do begin
i:=i+1;
Form3.Listbox1.items[i] :=FResult.FieldValueByName('Name');
FResult.Next;
stellt sich mir nur noch die Frage, wie kann ich jetzt den eingegebenen Namen im Edit
mit der Datenbank vergleichen ob er vorhanden ist.

Kannst du mir da eventuell helfen?

mkinzler 16. Jul 2006 10:22

Re: zur MySQL Verbinden und Einträge überprüfen
 
Anmerkungen zum vorhandenen Code:
In Zeile 21 reicht
SQL-Code:
SELECT Name FROM username;
Außerdem brauchst du die Zählervariable i nicht
Delphi-Quellcode:
Form3.Listbox1.items.add(FResult.FieldValueByName('Name'));
Um Herauszufinden, ob ein User vorhanden ist kannst du eine Select auf ihn machen:
SQL-Code:
Select * from username where name = '<name>';
Also z.B.

Select * from username where name = 'iron';[/sql]

Wenn du ein Ergebnis erhälst ist der Benutzer vorhanden.

iron 16. Jul 2006 10:30

Re: zur MySQL Verbinden und Einträge überprüfen
 
Ey Wunderbar, Danke für alles


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:17 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz