diff --git a/ChangeLog b/ChangeLog index 958f449626..a4151a1cee 100644 --- a/ChangeLog +++ b/ChangeLog @@ -19,6 +19,7 @@ phpMyAdmin - ChangeLog - bug #4449 Mediawiki export does not produce table header row; also fix related PHP warnings - bug #4442 New lines are added to query every time - bug #4445 Fatal error on SQL Export of join query +- bug #4448 Dump binary columns in hexadecimal notation not working 4.2.3.0 (2014-06-08) - bug #4423 Moving fields not working diff --git a/export.php b/export.php index 1b14be3ea6..215d494032 100644 --- a/export.php +++ b/export.php @@ -123,7 +123,7 @@ if (!defined('TESTSUITE')) { 'sql_type', 'sql_insert_syntax', 'sql_max_query_size', - 'sql_hex_for_blob', + 'sql_hex_for_binary', 'sql_utc_time', 'sql_drop_database', 'csv_separator', diff --git a/libraries/config.default.php b/libraries/config.default.php index d33b1fffe7..31449fa6a3 100644 --- a/libraries/config.default.php +++ b/libraries/config.default.php @@ -1920,9 +1920,9 @@ $cfg['Export']['sql_utc_time'] = true; /** * * - * @global boolean $cfg['Export']['sql_hex_for_blob'] + * @global boolean $cfg['Export']['sql_hex_for_binary'] */ -$cfg['Export']['sql_hex_for_blob'] = true; +$cfg['Export']['sql_hex_for_binary'] = true; /** * insert/update/replace diff --git a/libraries/config/messages.inc.php b/libraries/config/messages.inc.php index 633383d180..34dece07d3 100644 --- a/libraries/config/messages.inc.php +++ b/libraries/config/messages.inc.php @@ -173,7 +173,7 @@ $strConfigExport_sql_create_table_name = sprintf(__('Add %s'), 'CREATE TABLE'); $strConfigExport_sql_create_view_name = sprintf(__('Add %s'), 'CREATE VIEW'); $strConfigExport_sql_create_trigger_name = sprintf(__('Add %s'), 'CREATE TRIGGER'); -$strConfigExport_sql_hex_for_blob_name = __('Use hexadecimal for BLOB'); +$strConfigExport_sql_hex_for_binary_name = __('Use hexadecimal for BINARY & BLOB'); $strConfigExport_sql_if_not_exists_name = sprintf(__('Add %s'), 'IF NOT EXISTS'); $strConfigExport_sql_ignore_name = __('Use ignore inserts'); $strConfigExport_sql_include_comments_name = __('Comments'); diff --git a/libraries/config/setup.forms.php b/libraries/config/setup.forms.php index a2d7d3d704..354b2c14bc 100644 --- a/libraries/config/setup.forms.php +++ b/libraries/config/setup.forms.php @@ -316,7 +316,7 @@ $forms['Export']['Sql'] = array('Export' => array( 'sql_type', 'sql_insert_syntax', 'sql_max_query_size', - 'sql_hex_for_blob', + 'sql_hex_for_binary', 'sql_utc_time')); $forms['Export']['CodeGen'] = array('Export' => array( 'codegen_format')); diff --git a/libraries/config/user_preferences.forms.php b/libraries/config/user_preferences.forms.php index 604a35b0c8..d2026ce487 100644 --- a/libraries/config/user_preferences.forms.php +++ b/libraries/config/user_preferences.forms.php @@ -216,7 +216,7 @@ $forms['Export']['Sql'] = array( 'Export/sql_type', 'Export/sql_insert_syntax', 'Export/sql_max_query_size', - 'Export/sql_hex_for_blob', + 'Export/sql_hex_for_binary', 'Export/sql_utc_time'); $forms['Export']['CodeGen'] = array( 'Export/codegen_format'); diff --git a/libraries/plugins/export/ExportSql.class.php b/libraries/plugins/export/ExportSql.class.php index 14d56e5f98..42a0ac0995 100644 --- a/libraries/plugins/export/ExportSql.class.php +++ b/libraries/plugins/export/ExportSql.class.php @@ -426,7 +426,7 @@ class ExportSql extends ExportPlugin // Dump binary columns in hexadecimal $leaf = new BoolPropertyItem(); - $leaf->setName("hex_for_blob"); + $leaf->setName("hex_for_binary"); $leaf->setText( __( 'Dump binary columns in hexadecimal notation' @@ -1989,9 +1989,8 @@ class ExportSql extends ExportPlugin // timestamp is numeric on some MySQL 4.1, BLOBs are // sometimes numeric $values[] = $row[$j]; - } elseif (stristr($field_flags[$j], 'BINARY') - && $fields_meta[$j]->blob - && isset($GLOBALS['sql_hex_for_blob']) + } elseif (stristr($field_flags[$j], 'BINARY') !== false + && isset($GLOBALS['sql_hex_for_binary']) ) { // a true BLOB // - mysqldump only generates hex data when the --hex-blob diff --git a/test/classes/plugin/export/PMA_ExportSql_test.php b/test/classes/plugin/export/PMA_ExportSql_test.php index b57153bc23..3a1b6966c1 100644 --- a/test/classes/plugin/export/PMA_ExportSql_test.php +++ b/test/classes/plugin/export/PMA_ExportSql_test.php @@ -1876,7 +1876,7 @@ class PMA_ExportSql_Test extends PHPUnit_Framework_TestCase $GLOBALS['sql_ignore'] = true; $GLOBALS['sql_truncate'] = true; $GLOBALS['sql_insert_syntax'] = 'both'; - $GLOBALS['sql_hex_for_blob'] = true; + $GLOBALS['sql_hex_for_binary'] = true; ob_start(); $this->object->exportData( @@ -1903,7 +1903,7 @@ class PMA_ExportSql_Test extends PHPUnit_Framework_TestCase ); $this->assertContains( - "(NULL, test, 0x3130, b'110', " . '\'\0\n\r\Z\');', + '(NULL, test, 0x3130, 0x36, 0x000a0d1a);', $result ); @@ -1991,7 +1991,7 @@ class PMA_ExportSql_Test extends PHPUnit_Framework_TestCase $GLOBALS['sql_ignore'] = true; $GLOBALS['sql_truncate'] = true; $GLOBALS['sql_insert_syntax'] = 'both'; - $GLOBALS['sql_hex_for_blob'] = true; + $GLOBALS['sql_hex_for_binary'] = true; ob_start(); $this->object->exportData(