Anfängerfrage: Transfer einer SQL-DB?

gaianchild

gaianchild

Aktives Mitglied
Thread Starter
Dabei seit
16.01.2003
Beiträge
1.784
Reaktionspunkte
60
Moin allerseits!

Ne kleiner Frage von mir als absoluter PHP/SQL-Neuling:
Wie importiert transferiert man am besten eine SQL-DB (die auf einem externen Webserver liegt) am besten auf den lokalen Apache?

Externer Webserver: UNIX-Apache mit PHP und SQL
Lokaler Webserver: CompleteApache2, CompletePHP, CompleteMySQL

Die Datenbank, die übertragen werden soll ist die automatisch von Mambo Open Source (http://www.mamboserver.com) generierte.

Ich hab´s wie folgt probiert: Per phpmyadmin auf Exportieren (mit Standardeinstellungen und "Datei und Struktur") dann auf dem lokalen WebServer mit phpmyadmin eine neue DB (mit gleichem Namen wie die externe DB) angelegt und ebenfalls via phpmyadmin per "Datei auswählen" die exportierte *.sql-Datei wieder probiert zu importieren.

Und dann kam folgendes:

SQL-Befehl_:_


CREATE TABLE mos_components(
id int( 11 ) NOT NULL AUTO_INCREMENT ,
name varchar( 50 ) NOT NULL default '',
link varchar( 255 ) NOT NULL default '',
menuid int( 11 ) unsigned NOT NULL default '0',
parent int( 11 ) unsigned NOT NULL default '0',
admin_menu_link varchar( 255 ) NOT NULL default '',
admin_menu_alt varchar( 255 ) NOT NULL default '',
OPTION varchar( 50 ) NOT NULL default '',
ordering int( 11 ) unsigned NOT NULL default '0',
admin_menu_img varchar( 255 ) NOT NULL default '',
iscore tinyint( 4 ) NOT NULL default '0',
PRIMARY KEY ( id )
) 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 'option varchar(50) NOT NULL default '',
__ordering int(11) unsi

Was habe ich falsch gemacht?
Sind die SQL-Versionen nicht kompatibel zueinander?
Oder ist da wirklich ein fehler in der (autmatisch generierten) DB?
Falls ja: Wie kann ich die DB wieder reparieren?

Danke für Eure Hilfe!

GaianChild
 
Zuletzt bearbeitet von einem Moderator:
Das Problem tritt auf, weil "OPTION" ein reserviertes Wort in MySQL ist:
Reservierte Wörter in MySQL

MySQL weiß ja nicht, ob Du mit OPTION einen Namen für ein Feld meinst, oder die
eigentliche Funktion. Grundsätzlich dürfen diese sog. Schlüsselwörter (Key-Words)
nicht für Variablen oder Feldnamen verwendet werden.

Da der Export jedoch von einem bestehenden Produkt (mamboserver) generiert wurde,
kann ich mir nicht vorstellen, dass denen da so ein Fehler unterlaufen ist, und sie einen
Tabellennamen verwenden, der nicht erlaubt ist. :rolleyes:
 
Zuletzt bearbeitet von einem Moderator:
Naja, scheinbar ja schon... erstellt und verwaltet wird die DB von Mambo selber... ich hab da nichts dran gedreht (hab ja auch keine Ahnung von SQL, ist für mich alles Zauberei) :D

Ich habe einfach nochmal von vorne angefangen, gottseidank ist die Site erst im Experimentierstadium, da darf so etwas noch passieren :)

Ich hoffe nur, dass Mambo mittlerweile so ausgereift ist, dass nicht irgendwann die Datenbank flöten geht. Oder wenn so etwas passiert, dass die Mambo-Community viel Geduld mit mir hat ;)

Danke jedenfalls für die Erklärung, Delmar!

Liebe Grüße,
GaianChild
 
Zurück
Oben Unten