[BUGFIX] MySQL: Use ENGINE (not TYPE) for storage-engine 92/22592/3
authorStefan Neufeind <typo3.neufeind@speedpartner.de>
Fri, 26 Jul 2013 13:19:35 +0000 (15:19 +0200)
committerAndreas Wolf <andreas.wolf@typo3.org>
Sat, 3 Aug 2013 21:51:09 +0000 (23:51 +0200)
Using TYPE is deprecated since a MySQL 4.x and was removed in MySQL
5.5. Core already uses ENGINE but SqlParser turned that into TYPE,
leading to errors.

From https://dev.mysql.com/doc/refman/5.0/en/storage-engines.html:
"The older term TYPE is supported as a synonym for ENGINE for
backward compatibility, but ENGINE is the preferred term and TYPE
is deprecated."

Change-Id: I6607d3e726c43cb74ca00f33ec2332de4f6a76d8
Resolves: #50466
Releases: 6.2, 6.1, 6.0, 4.7, 4.5
Reviewed-on: https://review.typo3.org/22592
Reviewed-by: Andreas Wolf
Tested-by: Andreas Wolf
typo3/sysext/core/Classes/Database/SqlParser.php

index 4a70566..fd1956f 100644 (file)
@@ -1640,7 +1640,7 @@ class SqlParser {
                $query = 'CREATE TABLE ' . $components['TABLE'] . ' (
                        ' . implode(',
                        ', $fieldsKeys) . '
-                       )' . ($components['tableType'] ? ' TYPE=' . $components['tableType'] : '');
+                       )' . ($components['tableType'] ? ' ENGINE=' . $components['tableType'] : '');
                return $query;
        }