2013-08-20 18 views
18

Kiedy próbuję wykonać następujący błąd SQL w MySQL, Dostaję:Używanie "TYPE = InnoDB" w MySQL rzuca wyjątek

SQL:

 SQL = "CREATE TABLE Ranges ("; 
     SQL += "ID varchar(20) NOT NULL, "; 
     SQL += "Descriptions longtext NULL, "; 
     SQL += "Version_Number int NULL, "; 
     SQL += "Row_Updated bigint NULL, "; 
     SQL += "Last_Updated datetime NULL, "; 
     SQL += "XML longtext NULL, "; 
     SQL += "PRIMARY KEY (ID)"; 
     SQL += ") " + "TYPE = InnoDB"; 

Błąd:

Wystąpił błąd w składni SQL; sprawdź instrukcję, która odpowiada twojej wersji serwera MySQL dla właściwej składni do użycia w pobliżu "TYPE = InnoDB"

Ale jeśli usuniemy "TYPE = InnoDB", zapytanie działa poprawnie.

Wcześniej zapytanie działało poprawnie, tj. W MySQL 5.0. Ale kiedy zaktualizowałem do MySQL 5.6, otrzymuję powyższy błąd.

Wszelkie sugestie/alternatywy ... ??

Odpowiedz

34

Użyj ENGINE = Innodb zamiast TYPE = InnoDB. TYPE został usunięty w wersji 5.1.

+0

Dzięki. Dobrze pracował :) –

+0

Pracowałem. Dziękuję Ci. –

4

TYPE = InnoDB był przestarzały w MySQL 5.0 i został usunięty w My SQL 5.1 i nowszych wersjach.

Teraz musisz użyć ENGINE = InnoDB