Using "TYPE = InnoDB" in MySQL throws exception

Gokul Nath KP picture Gokul Nath KP · Aug 20, 2013 · Viewed 25.4k times · Source

When I try to execute the following SQL in MySQL, I'm getting error:

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";

Error:

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 = InnoDB"

But if I remove "TYPE = InnoDB", then the query works fine.

Previously the query worked fine, ie in MySQL 5.0. But when I upgraded to MySQL 5.6, I'm getting the above error.

Any Suggestions / Alternatives ... ??

Answer

Andrew picture Andrew · Aug 20, 2013

Use ENGINE = Innodb instead of TYPE = InnoDB. TYPE was removed in 5.1.