Vinzenz Mai: Anzahl der Datensätze ausgeben

Beitrag lesen

Hallo,

Dein Statement sollte somit
    SELECT vornameFROM11_dbtestWHEREvorname='Hans'
lauten.

Nein, da der komplette Query ja mit ' begrenzt ist. Aber mit " funktioniert es:

Lass doch einfach mal den Quatsch mit PHP weg. Du kannst ganz offensichtlich noch kein SQL. Du kannst ganz offensichtlich auch nicht besonders viel PHP. Aus diesem Grund rate ich Dir dringend dazu, SQL ohne Beimengung von PHP zu lernen. Setze im Client Deiner Wahl einfach SQL-Statements ab. Das kann auch gern phpMyAdmin sein. Angenehmer finde ich die MySQL-Workbench. Ab und an nutze ich einfach den Kommandozeilenclient.

Und nein: es ist überhaupt keine gute Idee, doppelte Anführungszeichen zur Begrenzung von Zeichenketten in SQL zu verwenden. MySQL ist so ziemlich das einzige mir bekannte Datenbankmanagementsystem, dass diese in seinem (ziemlich bescheuerten) Standardmodus akzeptiert. Im strengeren Modus geht das auch in MySQL nicht.

SQL-Standard ist das einfache Anführungszeichen. Geht überall. Deswegen ist es eine gute Idee, sich gleich anzugewöhnen, nur einfache Anführungszeichen zu verwenden. Umsteiger von MySQL auf irgendetwas anderes wie PostgreSQL, MS SQL Server, DB2, Oracle und Co. fallen unweigerlich auf die Nase, wenn sie sich nicht darüber im Klaren sind, was sie da machen.

$statement='SELECT vornameFROM11_dbtestWHEREvorname="Hans"';
Bei _Deiner_ Lösung wäre nach ...WHERE vorname=' ja schon Ende.

Nein. Ich nähme erstens doppelte Anführungszeichen, um mein SQL-Statement in eine PHP-Zeichenkette zu bekommen, nähme zweitens bei mysqli prepared-Statements und wüsste drittens, wie ich einfache Anführungszeichen innerhalb PHP-Zeichenketten, die von einfachen Anführungszeichen begrenzt sind, zu behandeln hätte.

Nochmals:
1. Schritt: Funktionierendes SQL-Statement im Client Deiner Wahl erstellen.

Wenn Du diesen Schritt erfolgreich geschafft hast:

2. Schritt: Dieses Statement über PHP ausführen und auf die Ergebnismenge zugreifen. Dabei nicht vergessen, den Fehlerfall mit einzukalkulieren, wie Dir dedlfix mit Engelsgeduld versucht hat beizubringen.

Freundliche Grüße

Vinzenz