aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2012-04-10 01:14:04 +0200
committerNils Adermann <naderman@naderman.de>2012-04-10 01:14:04 +0200
commitef297ec63e8328dc13a8d79d7c01d2d7322a263b (patch)
tree7d0f13142f4183afcc842de29dcdadef7388916b
parentMerge remote-tracking branch 'sadu/ticket/10561' into develop-olympus (diff)
parent[ticket/10774] Correctly specify index name when creating unique index on MySQL. (diff)
downloadphpbb-ef297ec63e8328dc13a8d79d7c01d2d7322a263b.tar.gz
phpbb-ef297ec63e8328dc13a8d79d7c01d2d7322a263b.tar.bz2
phpbb-ef297ec63e8328dc13a8d79d7c01d2d7322a263b.zip
Merge remote-tracking branch 'github-bantu/ticket/10774' into develop-olympus
* github-bantu/ticket/10774: [ticket/10774] Correctly specify index name when creating unique index on MySQL. [ticket/10774] Add unit tests for UNIQUE index existence and creation.
-rw-r--r--phpBB/includes/db/db_tools.php2
-rw-r--r--tests/dbal/db_tools_test.php11
2 files changed, 12 insertions, 1 deletions
diff --git a/phpBB/includes/db/db_tools.php b/phpBB/includes/db/db_tools.php
index 2cba11133a..c6dd23e6bd 100644
--- a/phpBB/includes/db/db_tools.php
+++ b/phpBB/includes/db/db_tools.php
@@ -2115,7 +2115,7 @@ class phpbb_db_tools
case 'mysql_40':
case 'mysql_41':
- $statements[] = 'ALTER TABLE ' . $table_name . ' ADD UNIQUE INDEX (' . implode(', ', $column) . ')';
+ $statements[] = 'ALTER TABLE ' . $table_name . ' ADD UNIQUE INDEX ' . $index_name . '(' . implode(', ', $column) . ')';
break;
case 'mssql':
diff --git a/tests/dbal/db_tools_test.php b/tests/dbal/db_tools_test.php
index fbde636b58..c7ddb88ce8 100644
--- a/tests/dbal/db_tools_test.php
+++ b/tests/dbal/db_tools_test.php
@@ -354,9 +354,20 @@ class phpbb_dbal_db_tools_test extends phpbb_database_test_case
$this->assertTrue($this->tools->sql_index_exists('prefix_table_name', 'i_simple'));
}
+ public function test_unique_index_exists()
+ {
+ $this->assertTrue($this->tools->sql_unique_index_exists('prefix_table_name', 'i_uniq'));
+ }
+
public function test_create_index_against_index_exists()
{
$this->tools->sql_create_index('prefix_table_name', 'fookey', array('c_timestamp', 'c_decimal'));
$this->assertTrue($this->tools->sql_index_exists('prefix_table_name', 'fookey'));
}
+
+ public function test_create_unique_index_against_unique_index_exists()
+ {
+ $this->tools->sql_create_unique_index('prefix_table_name', 'i_uniq_ts_id', array('c_timestamp', 'c_id'));
+ $this->assertTrue($this->tools->sql_unique_index_exists('prefix_table_name', 'i_uniq_ts_id'));
+ }
}