From 43e8acb3e77e9eebe13296c3139835fa1ca6c4dc Mon Sep 17 00:00:00 2001 From: pollen8 Date: Tue, 8 Dec 2015 16:01:15 +0100 Subject: [PATCH] adding Sub_part info to mySQLi db import/export code, allows for export and import of keys with length values --- libraries/joomla/database/exporter/mysqli.php | 3 ++- libraries/joomla/database/importer/mysqli.php | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libraries/joomla/database/exporter/mysqli.php b/libraries/joomla/database/exporter/mysqli.php index d3fdf2ee5a203..110ba6da780fc 100644 --- a/libraries/joomla/database/exporter/mysqli.php +++ b/libraries/joomla/database/exporter/mysqli.php @@ -59,7 +59,7 @@ protected function buildXmlStructure() // Get the details columns information. $fields = $this->db->getTableColumns($table, false); - $keys = $this->db->getTableKeys($table); + $keys = $this->db->getTableKeys($table); $buffer[] = ' '; @@ -74,6 +74,7 @@ protected function buildXmlStructure() { $buffer[] = ' '; } diff --git a/libraries/joomla/database/importer/mysqli.php b/libraries/joomla/database/importer/mysqli.php index f51614d2f54ec..1af5c7e428446 100644 --- a/libraries/joomla/database/importer/mysqli.php +++ b/libraries/joomla/database/importer/mysqli.php @@ -373,6 +373,8 @@ protected function getKeySql($columns) $kNonUnique = (string) $columns[0]['Non_unique']; $kName = (string) $columns[0]['Key_name']; $kColumn = (string) $columns[0]['Column_name']; + $kLength = (string) $columns[0]['Sub_part']; + $kLength = $kLength == '' ? '' : '(' . $kLength . ')'; $prefix = ''; @@ -390,13 +392,13 @@ protected function getKeySql($columns) if ($nColumns == 1) { - $kColumns[] = $this->db->quoteName($kColumn); + $kColumns[] = $this->db->quoteName($kColumn) . $kLength; } else { foreach ($columns as $column) { - $kColumns[] = (string) $column['Column_name']; + $kColumns[] = (string) $column['Column_name'] . $kLength; } }