The branch, QA_3_4 has been updated
via 5f78897bc8eadf5b399b9b4118bdb575f9f3e0a3 (commit)
from b02f4eec076ded51f258bb00c697ac72c13a9606 (commit)
- Log -----------------------------------------------------------------
commit 5f78897bc8eadf5b399b9b4118bdb575f9f3e0a3
Author: Madhura Jayaratne <madhura.cj(a)gmail.com>
Date: Tue Dec 6 18:41:04 2011 +0530
bug #3306875 [edit] Can't rename a database that contains views
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 1 +
db_operations.php | 9 +++++++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 7105115..70621d8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,7 @@ phpMyAdmin - ChangeLog
- bug #3438420 [core] Magic quotes removed in PHP 5.4
- bug #3398788 [session] No feedback when result is empty (signon auth_type)
- bug #3384035 [display] Problems regarding ShowTooltipAliasTB
+- bug #3306875 [edit] Can't rename a database that contains views
3.4.8.0 (2011-12-01)
- bug #3425230 [interface] enum data split at space char (more space to edit)
diff --git a/db_operations.php b/db_operations.php
index ebd9333..f516a64 100644
--- a/db_operations.php
+++ b/db_operations.php
@@ -124,7 +124,6 @@ if (strlen($db) && (! empty($db_rename) || ! empty($db_copy)))
{
}
unset($sql_constraints, $sql_drop_foreign_keys, $sql_structure);
-
foreach ($tables_full as $each_table => $tmp) {
// to be able to rename a db containing views,
// first all the views are collected and a stand-in is created
@@ -133,11 +132,17 @@ if (strlen($db) && (! empty($db_rename) || !
empty($db_copy))) {
$views[] = $each_table;
// Create stand-in definition to resolve view dependencies
$sql_view_standin = PMA_getTableDefStandIn($db, $each_table,
"\n");
+ PMA_DBI_select_db($newname);
PMA_DBI_query($sql_view_standin);
$GLOBALS['sql_query'] .= "\n" . $sql_view_standin .
';';
- continue;
}
+ }
+ foreach ($tables_full as $each_table => $tmp) {
+ // skip the views; we have creted stand-in definitions
+ if (PMA_Table::isView($db, $each_table)) {
+ continue;
+ }
$back = $sql_query;
$sql_query = '';
hooks/post-receive
--
phpMyAdmin