2012-04-12 2 views
0

Der SQL-Text, der es Ihnen in phpMyAdmin SQL-Seite von this Tutorial zum Kopieren und Einfügen sagt, gibt mir den Fehler:SQL-Tutorial Skriptfehler

#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 'TYPE=MyISAM' at line 6 

Dies ist das Skript:

CREATE TABLE `scores` (
    `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    `name` VARCHAR(15) NOT NULL DEFAULT 'anonymous', 
    `score` INT(10) UNSIGNED NOT NULL DEFAULT '0' 
) 
TYPE=MyISAM; 

Was Komme ich hier falsch?

+0

Nichts. Das sollte funktionieren. Ihre IDE ist wahrscheinlich in Aktion. Haben Sie einen anderen MySQL-Client ausprobiert? – Konerak

+0

Versuchen Sie einfach, 'TYPE' durch' ENGINE' zu ersetzen oder die gesamte Zeile wegzulassen. – Konerak

Antwort

5

Es sollte ENGINE=MyISAM statt TYPE=MyISAM sein.

+3

In der Tat. TYPE ist seit geraumer Zeit veraltet, [wurde aber einige Male entfernt/wieder hinzugefügt/wieder entfernt/...] (http://bugs.mysql.com/bug.php?id=17501). – Konerak

+0

toll, danke. Aus Interesse, was macht diese Linie? – SirYakalot

+0

Sie können über verschiedene Speicher-Engines hier lesen: http://dev.mysql.com/doc/refman/5.5/en/storage-engines.html. Im Grunde ist der Standardspeicher jetzt InnoDB. MyISAM ist alt, es erlaubt keine Fremdschlüssel und andere nützliche Dinge. Obwohl es in einigen Fällen schneller sein kann. –

4

Ja. TYPE funktioniert nicht für MyISAM.

**TYPE** must be **ENGINE** . 

Dies ist ein häufiges Problem!

Verwandte Themen