From 49d60fae92f977611621d91ffd6e9a8bcc9738ab Mon Sep 17 00:00:00 2001 From: Marc Delisle Date: Fri, 31 Oct 2003 14:13:18 +0000 Subject: [PATCH] backquotes for foreign keys --- ChangeLog | 3 +++ tbl_relation.php3 | 16 ++++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 98be6f549..b71419ee4 100755 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,9 @@ $Source$ 2003-10-31 Marc Delisle * lang/romanian: Updated, thanks to Valics Lehel. + * tbl_relation.php3: add backquotes around table and field names + in queries for InnoDB foreign keys; however, in current MySQL 4.0.16 + version, a blank character in a field name is not accepted by InnoDB 2003-10-27 Marc Delisle * querywindow.php3: bug 825668: js errors in SQL-history, diff --git a/tbl_relation.php3 b/tbl_relation.php3 index e32b124e8..d771d5d4b 100644 --- a/tbl_relation.php3 +++ b/tbl_relation.php3 @@ -121,10 +121,10 @@ if ($cfgRelation['relwork'] // could be put in an include file $upd_query = 'ALTER TABLE ' . $table . ' ADD FOREIGN KEY (' - . PMA_sqlAddslashes($master_field) . ')' + . PMA_backquote(PMA_sqlAddslashes($master_field)) . ')' . ' REFERENCES ' - . PMA_sqlAddslashes($foreign_table) . '(' - . PMA_sqlAddslashes($foreign_field) . ')'; + . PMA_backquote(PMA_sqlAddslashes($foreign_table)) . '(' + . PMA_backquote(PMA_sqlAddslashes($foreign_field)) . ')'; if (${$master_field . '_on_delete'} != 'nix') { $upd_query .= ' ON DELETE ' . $options_array[${$master_field . '_on_delete'}]; @@ -147,7 +147,7 @@ if ($cfgRelation['relwork'] if (PMA_MYSQL_INT_VERSION >= 40013) { $upd_query = 'ALTER TABLE ' . $table . ' DROP FOREIGN KEY ' - . $existrel_innodb[$master_field]['constraint']; + . PMA_backquote($existrel_innodb[$master_field]['constraint']); // I tried to send both in one query but it failed $upd_rs = PMA_mysql_query($upd_query); @@ -156,10 +156,10 @@ if ($cfgRelation['relwork'] // add another $upd_query = 'ALTER TABLE ' . $table . ' ADD FOREIGN KEY (' - . PMA_sqlAddslashes($master_field) . ')' + . PMA_backquote(PMA_sqlAddslashes($master_field)) . ')' . ' REFERENCES ' - . PMA_sqlAddslashes($foreign_table) . '(' - . PMA_sqlAddslashes($foreign_field) . ')'; + . PMA_backquote(PMA_sqlAddslashes($foreign_table)) . '(' + . PMA_backquote(PMA_sqlAddslashes($foreign_field)) . ')'; if (${$master_field . '_on_delete'} != 'nix') { $upd_query .= ' ON DELETE ' . $options_array[${$master_field . '_on_delete'}]; @@ -173,7 +173,7 @@ if ($cfgRelation['relwork'] if (PMA_MYSQL_INT_VERSION >= 40013) { $upd_query = 'ALTER TABLE ' . $table . ' DROP FOREIGN KEY ' - . $existrel_innodb[$master_field]['constraint']; + . PMA_backquote($existrel_innodb[$master_field]['constraint']); } } // end if... else....