Verständnisfrage zum PHP Tutorial
Matze
- datenbank
Hi
Mit dem "PHP Tutorial" meine ich natürlich http://tut.php-q.net.
Im Kapitel "MySQL / Ausgeben von Werten" wird die SELECT-Syntax beschrieben.
Wenn ich alles richtig verstanden habe, liest man mit SELECT Daten aus der Datenbank. Wenn man eine Suchanfrage startet, dann wird immer eine Tabelle erzeugt, die aber nicht als Tabelle (TABLE) im Sinne von MySQL behandelt wird, sondern intern ist. Diese interne Tabelle beinhaltet die Ergebnisse der Suchanfrage, welche man dann auflisten kann.
Bisher ist alles richtig, denke ich (korrigiert mich bitte wenn ich falsch liege).
Jetzt kommt es aber zu einem Verständnisproblem. Was bitte soll das heißen???
mysql> SELECT 'foobar', 3.1415, "foobar";
+--------+--------+--------+
| foobar | 3.1415 | foobar |
+--------+--------+--------+
| foobar | 3.1415 | foobar |
+--------+--------+--------+
Dass das da unten eine Tabelle ist, sehe ich schon. Ist _das_ die interne Tabelle mit den Ergebnissen der SELECT-Abfrage? Wenn ja, dann müsste SELECT zwei Werte gefunden haben, stimmts? Demnach ist dies eine Beispieldatenbank und keine existierende...
Hier wird nach drei Begriffen gesucht: 'foobar', Pi und "foobar". Doch was soll das "mysql>" davor? Im Tutorial steht:
"Dieses "mysql>" ist der Eingabepromt für ein MySQL-Befehl. Wenn man auf einem Linux-Server den Befehl „mysql” eingibt hat man die Möglichkeit MySQL-Befehle direkt an die Datenbank zu schicken."
Eingabeprompt? _Auf_ einem Server etwas eingeben?
Ahh, und noch was ganz allgemeines zu MySQL : Müssen die Befehle _alle_ groß geschrieben werden?
Ihr seht schon, ich komme mit MySQL überhaupt nicht klar, bitte erklärt mir was ich nicht verstanden habe!
euer Matze
Hallo Matze,
Eingabeprompt? _Auf_ einem Server etwas eingeben?
MySQL ist ja eine Server-Client Geschichte, die Kommandozeile ist in dem Fall der Client. Sagen wir mal, du hast auf Windows MySQL z.B. unter C:\mysql installiert. Fuer Linux musst Du das Beispiel halt gedanklich anpassen. Du wechselst in der Kommandozeile ins C:\mysql\bin-Verzeichnis und tippst da 'mysql' ein. Jetzt hast du anstatt des Prompts vom Betriebssytem den Prompt von mysql, also
mysql>
Hier kannst Du ganz normales SQL eingeben, also Queries aller Art und erhaelst als Ergebnis bei SELECT Tabellen, die so etwa aussehen, wie die in Deinem Beipiel. Die Beispiel im MySQL Manual sind auch immer so aufgebaut, wie sie an der Kommandozeile aussehen.
Müssen die Befehle _alle_ groß geschrieben werden?
Nein, aber es hat sich so eingebuergert. Gerade, wenn Du SQL innerhalb PHP benutzt, ist das auch ganz gute Orientierungshilfe
Ihr seht schon, ich komme mit MySQL überhaupt nicht klar
Ich fand es anfangs sehr hilfreich, mit GUI-Tools zu arbeiten, heute finde ich zumindestens bequem. Wenn Du unter Windows arbeitest, wuerden Dich vielleicht dbtools manager oder SuperGUI interessieren (sorry, hab gerade keine Links zur Hand). Unter Linux nehme ich phpMyAdmin, aber da gibt es bestimmt auch noch die ein oder andere nette GUI. GUIs haben zwar haeufig den Nachteil, dass sie vom eigentlichen Geschehen ablenken, aber sie koennen es bei sparsamer Handhabung auch verdeutlichen.
Gruß,
Dieter
Hallo,
Eingabeprompt? _Auf_ einem Server etwas eingeben?
Vielleicht probierst Du es mal mit diesem MySQL-Crashkurs (PDF) fuer die Konsole.
Ahh, und noch was ganz allgemeines zu MySQL : Müssen die Befehle _alle_ groß geschrieben werden?
Siehe den Hinweis im genannten Tutorial.
MfG, Thomas