![]() |
Datenbank: mysql • Version: 4.1 • Zugriff über: internet
afrage: in db schon vorhanden?
hallo, ich möchte abfargen ob edit1.text+edit2.text schon in der db vorhanden sind:
Delphi-Quellcode:
wenn die vorhanden sind also edit..=kulu dann kommt auch die showmessage wenn aber nicht, dann kommt der fehler: zugriffsverletzung bei......
q:='SELECT nname, vname FROM user WHERE nname='+aps+edit1.text+aps+' AND vname='+aps+edit2.text+aps+'';
FResult:=FMysql.query(q, true, ex); kulu:=fresult.FieldValueByName('nname')+' '+fresult.FieldValueByName('vname'); if not (edit1.Text+' '+edit2.text=kulu) then begin showmessage('Registration erfolgreich.'); if assigned(FResult) then begin if FMysql.Status<>MYSQL_STATUS_READY then begin ShowMessage('Ein Ergebnis wurde unvollständig gelesen!'); FreeAndNil(FResult); end; end; q:='SELECT id FROM user ORDER BY id DESC'; FResult:= FMysql.query(q, true, ex); FResult.First; anzahl:=strtoint(fresult.FieldValueByName('id'))+1; q:='INSERT INTO user (id, nname, vname, pw, jg, kl, email, telefon) VALUES (' +aps+ inttostr(anzahl) +aps+', '+aps+edit1.Text+aps+', '+aps+edit2.Text+aps+', '+aps+edit3.Text+aps+', '+aps+edit4.Text+aps+', '+aps+edit5.Text+aps+', '+aps+edit6.Text+aps+', '+aps+edit7.Text+aps+')'; if checkbox1.State=cbchecked then begin for m:=1 to 7 do begin Tedit(findcomponent('edit' +inttostr(m))).Text:=''; edit4.Text:='13'; end; end; end else begin showmessage('Es wurde bereits ein Account mit diesem Namen angelegt.'); kulu:=''; end; end; end; |
Re: afrage: in db schon vorhanden?
Ich würde zuerst überprüfen, wie groß die Ergebnismenge ist.
|
Re: afrage: in db schon vorhanden?
Hallo,
in welcher Zeile denn genau ? Heiko |
Re: afrage: in db schon vorhanden?
ok danke habe jetzt
Delphi-Quellcode:
und schon klappts thx :)
if length(fresult.FieldValueByName('nname'))<>0 then // <- das eingefügt...
kulu:=fresult.FieldValueByName('nname')+' '+fresult.FieldValueByName('vname'); ... |
Re: afrage: in db schon vorhanden?
Hai ph0,
so ganz verstehe ich nicht was Du machst ;-) a) Was ist denn "aps" ? b) Warum verwaltest Du die IDs in der user-Tabelle selber und lässt das nicht vom DBMS machen? c) Lege doch auf nname und vname eine Unique-Key um zu verhindern das zweimal der selbe Benutzer angelegt wird. |
Re: afrage: in db schon vorhanden?
also aps ist: aps:=chr(39) also das ' zeichen...
weil ich ganz neu in datenbanken etc bin...und ich nicht weiß/wusste dass und wie das geht... edit: wenn aber auf vname unique ist, kann dann nicht auch nur einmal der vorname gewählt werden, oder gilt das dann nur für die kombination? |
Re: afrage: in db schon vorhanden?
Mur für die Kombination
|
Re: afrage: in db schon vorhanden?
...und wenn er dann mal zwei meier müller schulz in der db haben will?
|
Re: afrage: in db schon vorhanden?
Dann würde aber seine manuelle Abfrage, ob die Kombination schon vorhanden ist auch nicht sinnvoll sein.
|
Re: afrage: in db schon vorhanden?
Jop.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:20 Uhr. |
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