AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MySQL Syntaxfehler

Ein Thema von Pseudemys Nelsoni · begonnen am 2. Nov 2004 · letzter Beitrag vom 2. Nov 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:30
moin,

wo ist hier ein fehler?

Delphi-Quellcode:
  q.SQL.Text := Format(
                  'SELECT COUNT(Feld1, Feld2) AS CRESULT ' +
                  'FROM `Felder` ' +
                  'WHERE `Feld1` = %0:s' + feld1 + '%0:s AND `Feld2` = %0:s' + feld2 + '%0:s;',
                  [#39]
                );

nicht über das "%0:s" wundern, das ist letzendlich das gleiche wie: '
ich habe die format funktion genommen da es mich nervt das mysql und delphi die gleichen ' ' benutzen für strings.

hier nochmal wie es aussehen würde wenn man Format() in einer messagebox hätte:

Zitat:
SELECT COUNT(Feld1, Feld2) AS CRESULT FROM `Felder` WHERE `Feld1` = 'das_ist_im_feld1' AND `Feld2` = 'das_ist_im_feld2';
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:41
Hallo,

ich würde mal auf COUNT(Feld1, Feld2) tippen. Ich wusste gar nicht, dass das mit 2 Feldern geht.
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#3

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:45
Geht auch nicht, da es keinen Sinn macht.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#4

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:47
wie mach ich es dann?

ich möchte in der datenbank prüfen ob ein NICK und das dazugehörige passwort existieren (ergebis wäre dann > 0) sonst wäre es 0 (existiert nicht)
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#5

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:54
Ganz einfach:

Delphi-Quellcode:
ZQ1.SQL.Text:='SELECT user, password FROM user WHERE user=:user and password=:pass';
ZQ1.ParamByName('user').asString:='User1';
ZQ1.ParamByName('pass').asString:='dasPasswort';
ZQ1.Open;
If ZQ1.RecordCount > 0 Then
   ShowMessage('Login OK')
else
   ShowMessage('Login fehlgeschlagen');
  Mit Zitat antworten Zitat
Benutzerbild von Domo Sokrat
Domo Sokrat

Registriert seit: 14. Mai 2003
Ort: Wehrheim / Ts.
235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 13:58
Hi, ich hab' auch noch einen. Wie wär's hiermit?

Code:
SELECT COUNT (name)
FROM  users
WHERE name = 'Username' AND
       pass IS NOT NULL;
Sollte Deinen Anforderungen entsprechen.

[edit]Uuups! Jo! Semikolon muss weg! Copy'n'Paste [/edit]
Michael Seeger
Vergesst nicht: Es wird überall nur mit Wasser gekocht
ZEOSLib - Admin-Team
ZeosLib-Forum
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 14:48
@Pseudemys Nelsoni:
lass mal das " ; " am Ende deines SQL Befehls weg. Damit kommt Delphi nicht klar.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#8

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 15:02
@Domo, wird da das passwort auch auf richtigkeit überprüft?

@jelly, kommt delphi damit nicht klar obwohl es innerhalb eines strings ist? ich meine normal anzeigen kann ich es ja mit showmessage(';');
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#9

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 15:07
Du hast mich falsch verstanden.. Delphi kommt mit klar. Nur wenn du den SQL Befehl mit abschliessendem ";" an den MySQL Server, kriegst du einen Fehler.

Das ; am Ende eines MySQL Befehls gibt dem Server an, daß der Befehl zu Ende ist und eventuell ein 2ter kommt. Somit kannst du z.B. über PHPMyAdmin ganze Skripte an den Server senden. In Delphi über die TQuery (oder Zeoskomp, egal) klappt das aber nicht... Also Fehlermeldung.

Gruß, Tom

PS: übrigens, um ein einfaches Anführungszeichen ' in einen Delphi String einzugeben, muss du ihn einfach 2mal eintippen, der wird dann als einzelner ' interpretiert.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#10

Re: MySQL Syntaxfehler

  Alt 2. Nov 2004, 15:15
moin jelly,

wie ich gerade rausgefunden hab, lag es wirklich an meinem COUNT(), also mit ";" gehts (zum glück *g*) auch.

Zitat:
PS: übrigens, um ein einfaches Anführungszeichen ' in einen Delphi String einzugeben, muss du ihn einfach 2mal eintippen, der wird dann als einzelner ' interpretiert.
jo, nur war mir das nachher zu doof weil ich da manchmal 3-4 hintereinander brauchte, da hatte ich kein überlick mehr

danke
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz