Hallo, ich beginne gerade, mich im Zusammenhang mit php auch mit MySQL zu beschaeftigen. Und natuerlich stosse ich gleich am Anfang auf ein Problem. Wenn ich mit CREATE TABLE Tabelle ( Feld Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (Indexname, ...) | KEY [Indexname, ...] | INDEX [Indexname, ...] | UNIQUE (Indexname, ...) | [CONSTRAINT Symbol] FOREIGN KEY (Indexname,...)[Referenz] oder CHECK (Feld) \g eine Datenbank erstellen will, bekomme ich ein "ERROR 1064: You have an error in your SQL syntax near 'Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (I' at line 3" Das Beispiel ist natuerlich nicht auf meinem Mist gewachsen, sondern stammt aus einem Lehrbuch. Beste Gruesse, Heinz. -- http://www.pahlke-online.de/reisenews/ http://www.Pahlke-KunstWebDesign.de/
On Tue, 2002-09-03 at 16:54, Heinz W. Pahlke wrote:
ich beginne gerade, mich im Zusammenhang mit php auch mit MySQL zu beschaeftigen.
Dann solltest Du Dich mal mit der Syntaxbeschreibung in Lehrbüchern und manpages auseinanderzusetzen, ansonsten wirst Du solche Probleme häufiger bekommen.
Und natuerlich stosse ich gleich am Anfang auf ein Problem. Wenn ich mit
CREATE TABLE Tabelle ( Feld Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (Indexname, ...) | KEY [Indexname, ...] | INDEX [Indexname, ...] | UNIQUE (Indexname, ...) | [CONSTRAINT Symbol] FOREIGN KEY (Indexname,...)[Referenz] oder CHECK (Feld) \g
eine Datenbank erstellen will, bekomme ich ein "ERROR 1064: You have an error in your SQL syntax near 'Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (I' at line 3"
Ähm......Hast Du das so eingegeben? Dann wundert es nicht ;-) Eine korrekte Tabelle würde so erzeugt: CREATE TABLE Tabelle ( Id INT NOT NULL DEFAULT -1 AUTO_INCREMENT PRIMARY KEY, Text CHAR(60) NOT NULL DEFAULT "Ich bin der Defaultwert" )\g Soll heissen, die Dinge in [] sind optional, wenn ein | zwischen mehreren steht mußt Du Dir einen (sinnvollen) aussuchen. Datentyp mußt Du mit dem entsprechenden Typ ersetzen. (In meinem Beispiel wird eine Tabelle mit zwei Spalten erzeugt. Die eine ist ein INT, der automatisch erhöht wird, wenn Du eine neue Spalte hinzufügst, die zweite besteht aus 60 Charactern.) HTH Volker -- Volker Kroll 4mino AG Chief System Developer Chausseestr. 52 b volker.kroll@4mino.de D-10115 Berlin Tel.: +49-30-2888490-0 Fax.: +49-30-2888490-99
Heinz W. Pahlke wrote:
Und natuerlich stosse ich gleich am Anfang auf ein Problem. Wenn ich mit
CREATE TABLE Tabelle ( Feld Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT]
eine Datenbank erstellen will, bekomme ich ein "ERROR 1064: You have an error in your SQL syntax near 'Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (I' at line 3"
Das Beispiel ist natuerlich nicht auf meinem Mist gewachsen, sondern stammt aus einem Lehrbuch.
Schlag mal das erste Kapitel aus deinem Lehrbuch auf, das dir erzaehlen sollte, das bei der Schreibweise "[NOT NULL | NULL]" entweder das eine oder das andere (getrennt durch das |) eingesetzt werden soll. Defaultwert musst du auch entsprechend aussuchen. Ebenso Feld (eig. Feldname) und Datentyp. Peter
On Tue, Sep 03, 2002 at 16:54:22 +0200, Heinz W. Pahlke wrote:
Und natuerlich stosse ich gleich am Anfang auf ein Problem. Wenn ich mit
CREATE TABLE Tabelle ( Feld Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (Indexname, ...) | KEY [Indexname, ...] | INDEX [Indexname, ...] | UNIQUE (Indexname, ...) | [CONSTRAINT Symbol] FOREIGN KEY (Indexname,...)[Referenz] oder CHECK (Feld) \g
eine Datenbank erstellen will, bekomme ich ein "ERROR 1064: You have an error in your SQL syntax near 'Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (I' at line 3"
Heinz, das sind doch Beispiele, die Dir verdeutlichen, welche Angaben Du optional einstellen kannst. Die eckigen Klammern sind -- aehnlich wie bei Manuals fuer Befehle -- nur dazu da, optionale Argumente anzuzeigen. Ein korrektes Beispiel koennte so lauten: ,-------------------------------------------------- | CREATE TABLE linuxbenutzer | ( | Nachname VARCHAR(30), | Vorname VARCHAR(30), | Geburtsdatum DATE, | Gehalt DECIMAL(8,2), | Geschlecht ENUM('m', 'w'), | ); `--------------------------------------------------
Das Beispiel ist natuerlich nicht auf meinem Mist gewachsen, sondern stammt aus einem Lehrbuch.
Hast Du kein besseres Lehrbuch? Schau Dir einmal das erstklassige Handbuch zu SQL von Christoph Reeg an. Du findest es beispielsweise unter http://ffm.junetz.de/members/reeg/ Der schreibt sehr lehrreich und damit habe ich auch leichten Einstieg in die Materie gefunden, zumal auch PHP behandelt wird. Gruss Peter Blancke -- Nachtwaechter ist der Wahnsinn, weil er wacht...
Hallo, On 03-Sep-2002 Peter Blancke wrote:
On Tue, Sep 03, 2002 at 16:54:22 +0200, Heinz W. Pahlke wrote:
Und natuerlich stosse ich gleich am Anfang auf ein Problem. Wenn ich mit [...] eine Datenbank erstellen will, bekomme ich ein "ERROR 1064: You have an error in your SQL syntax near 'Datentyp [NOT NULL | NULL] [DEFAULT Defaultwert] [AUTO_INCREMENT] PRIMARY KEY (I' at line 3"
Heinz, das sind doch Beispiele, die Dir verdeutlichen, welche Angaben Du optional einstellen kannst. Die eckigen Klammern sind -- aehnlich wie bei Manuals fuer Befehle -- nur dazu da, optionale Argumente anzuzeigen.
Danke Dir und den anderen, die mir mein Missverstaendnis erklaert haben.
Das Beispiel ist natuerlich nicht auf meinem Mist gewachsen, sondern stammt aus einem Lehrbuch.
Hast Du kein besseres Lehrbuch? Schau Dir einmal das erstklassige
Eigentlich geht es in dem Buch darum, wie man mit php auf SQL-Datenbanken zugreift. Die dafuer benoetigten Datenbanken soll man sich eigentlich downloaden, aber es gibt auch einen kurzen erklaerenden Textabschnitt. Da ich aber neugierig war, wollte ich es eben einfach mal selbst probieren. Und meine Herangehensweise ist eben oft "trial and error", also erst einmal abschreiben, dann ansehen, was herauskommt und durch Veraenderungen verstehen lernen, was da eigentlich wie passiert.
Handbuch zu SQL von Christoph Reeg an. Du findest es beispielsweise unter
http://ffm.junetz.de/members/reeg/
Der schreibt sehr lehrreich und damit habe ich auch leichten Einstieg in die Materie gefunden, zumal auch PHP behandelt wird.
Habe ich mir eben gerade heruntergeladen und mal kurz angesehen. Scheint wirklich sehr verstaendlich geschrieben zu sein. Beste Gruesse, Heinz. -- http://www.pahlke-online.de/reisenews/ http://www.Pahlke-KunstWebDesign.de/
participants (4)
-
Heinz W. Pahlke
-
Peter Blancke
-
Peter Wiersig
-
Volker Kroll