Zum Inhalt springen

Fehler beim Erstellen der DB auf mySql 4.1

Erstellt am 27. September 2003 · 8 Antworten · letzte Antwort am 30. September 2003

Tags: Datenbank, Frage

arnie ·

Bin leider kein Profi auf MySQL. Kann mir jemand bitte sagen, warum die Installation beim DB-Script immer an der folgenden Stelle hängen bleibt.

CREATE TABLE cache_hash(

hash varchar( 32 ) NOT NULL default '',
content mediumblob NOT NULL ,
tstamp int( 11 ) unsigned NOT NULL default '0',
ident varchar( 20 ) NOT NULL default '',
PRIMARY KEY ( hash )
) TYPE = MYISAM

MySQL meldet:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'hash varchar(32) NOT NULL default '',
content mediumblob NOT

Danke

Nimer ·

passiert das jetzt beim einrichten von Typo3 wenn du die ganzen Tabellen anlegen willst?
Mit etwas mehr Infos könnte man die bestimmt auch besser helfen.
Wenn dir nicht klar ist, ob das Statement korrekt ist, dann lies die mySQL Doku.

Nimer

arnie ·

Sorry für die knappe Info. Die Fehlermeldung tritt bei der Installation auf. Ich habe dann das Script "database.sql" testweise über phpMyAdmin ausgeführt, um festzustellen, wo das Problem auftritt.

Typo3 läuft bei mir unter FreeBSD. Das Script bringt aber auch Fehler bei MySQL 4.1 unter Win. Kann es eventuell daran liegen, dass zuvor keine 3er-Installation vorhanden war und bestimmte Libraries dadurch fehlen?

Danke

CoolWater ·

isses mySQL Version 4.1.0? Wenn höher, dann produziert wohl php den fehler, weil die 4er-Generation von PHP mySQL nur bis zur Version 4.1.0 unterstützen...

HTH
CW

arnie ·

Also ich denke das Problem gefunden zu haben.

Offensichtlich gilt die Spaltenbezeichnung "hash" ab Version 4.1.0 als reserviertes Wort. D.h. dass die DB-Scripts nur mehr funktionieren, wenn hash in einfache Hochkommas gesetzt wird 'hash'.

Nach Anpassung des Quellcodes lief typo3 bei mir ohne Fehler.

Nochmals vielen Dank 😃

Arnie

Chip ·
CoolWater schrieb

isses mySQL Version 4.1.0? Wenn höher, dann produziert wohl php den fehler, weil die 4er-Generation von PHP mySQL nur bis zur Version 4.1.0 unterstützen...

Quelle?

Ich würde mal sagen, dass das Quatsch ist. MySQL ist nach wie vor drin!

- michael

Chip ·
CoolWater schrieb

siehe http://de2.php.net/manual/de/ref.mysql.php
Zitat zu den MySQL-Funktionen in PHP:

Diese MySQL Erweiterung arbeitet nicht mit MySQL Versionen größer als 4.1.0 zusammen. Für diese müssen Sie MySQLi benutzen

Interessant, das hatte ich nicht gewusst!

Ist diese Erweiterung nur temporär oder müssen langfristig alle mysql-Aufrufe umgeschrieben werden?

- michael