summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2009-08-17 06:52:02 +0000
committerDries Buytaert <dries@buytaert.net>2009-08-17 06:52:02 +0000
commit55d9463766e08ebaf9aa08955a418e18fd889353 (patch)
tree37c9b5933d3e58daefaa3f90ec90a013b3922433 /includes
parent9b4013fd82fa117215a928671ab9a72f4972fc59 (diff)
downloadbrdo-55d9463766e08ebaf9aa08955a418e18fd889353.tar.gz
brdo-55d9463766e08ebaf9aa08955a418e18fd889353.tar.bz2
- Patch #370240 by Josh Waihi, stuzza, mfb, Arancaytar: PDO should quote index names in table declarations.
Diffstat (limited to 'includes')
-rw-r--r--includes/database/mysql/schema.inc26
-rw-r--r--includes/database/pgsql/schema.inc14
-rw-r--r--includes/database/sqlite/schema.inc4
3 files changed, 22 insertions, 22 deletions
diff --git a/includes/database/mysql/schema.inc b/includes/database/mysql/schema.inc
index 6be46be92..16f3fd5a8 100644
--- a/includes/database/mysql/schema.inc
+++ b/includes/database/mysql/schema.inc
@@ -226,12 +226,12 @@ class DatabaseSchema_mysql extends DatabaseSchema {
}
if (!empty($spec['unique keys'])) {
foreach ($spec['unique keys'] as $key => $fields) {
- $keys[] = 'UNIQUE KEY ' . $key . ' (' . $this->createKeysSqlHelper($fields) . ')';
+ $keys[] = 'UNIQUE KEY `' . $key . '` (' . $this->createKeysSqlHelper($fields) . ')';
}
}
if (!empty($spec['indexes'])) {
foreach ($spec['indexes'] as $index => $fields) {
- $keys[] = 'INDEX ' . $index . ' (' . $this->createKeysSqlHelper($fields) . ')';
+ $keys[] = 'INDEX `' . $index . '` (' . $this->createKeysSqlHelper($fields) . ')';
}
}
@@ -242,10 +242,10 @@ class DatabaseSchema_mysql extends DatabaseSchema {
$ret = array();
foreach ($fields as $field) {
if (is_array($field)) {
- $ret[] = $field[0] . '(' . $field[1] . ')';
+ $ret[] = '`' . $field[0] . '`(' . $field[1] . ')';
}
else {
- $ret[] = $field;
+ $ret[] = '`' . $field . '`';
}
}
return implode(', ', $ret);
@@ -255,10 +255,10 @@ class DatabaseSchema_mysql extends DatabaseSchema {
$ret = array();
foreach ($fields as $field) {
if (is_array($field)) {
- $ret[] = $field[0] . '(' . $field[1] . ')';
+ $ret[] = '`' . $field[0] . '`(' . $field[1] . ')';
}
else {
- $ret[] = $field;
+ $ret[] = '`' . $field . '`';
}
}
return implode(', ', $ret);
@@ -297,7 +297,7 @@ class DatabaseSchema_mysql extends DatabaseSchema {
}
public function dropField(&$ret, $table, $field) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP ' . $field);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP `' . $field . '`');
}
public function fieldSetDefault(&$ret, $table, $field, $default) {
@@ -308,11 +308,11 @@ class DatabaseSchema_mysql extends DatabaseSchema {
$default = is_string($default) ? "'$default'" : $default;
}
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN ' . $field . ' SET DEFAULT ' . $default);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN `' . $field . '` SET DEFAULT ' . $default);
}
public function fieldSetNoDefault(&$ret, $table, $field) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN ' . $field . ' DROP DEFAULT');
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN `' . $field . '` DROP DEFAULT');
}
public function addPrimaryKey(&$ret, $table, $fields) {
@@ -324,20 +324,20 @@ class DatabaseSchema_mysql extends DatabaseSchema {
}
public function addUniqueKey(&$ret, $table, $name, $fields) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ADD UNIQUE KEY ' . $name . ' (' . $this->createKeySql($fields) . ')');
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ADD UNIQUE KEY `' . $name . '` (' . $this->createKeySql($fields) . ')');
}
public function dropUniqueKey(&$ret, $table, $name) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP KEY ' . $name);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP KEY `' . $name . '`');
}
public function addIndex(&$ret, $table, $name, $fields) {
- $query = 'ALTER TABLE {' . $table . '} ADD INDEX ' . $name . ' (' . $this->createKeySql($fields) . ')';
+ $query = 'ALTER TABLE {' . $table . '} ADD INDEX `' . $name . '` (' . $this->createKeySql($fields) . ')';
$ret[] = update_sql($query);
}
public function dropIndex(&$ret, $table, $name) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP INDEX ' . $name);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP INDEX `' . $name . '`');
}
public function changeField(&$ret, $table, $field, $field_new, $spec, $keys_new = array()) {
diff --git a/includes/database/pgsql/schema.inc b/includes/database/pgsql/schema.inc
index 2d282b50b..61080c0ad 100644
--- a/includes/database/pgsql/schema.inc
+++ b/includes/database/pgsql/schema.inc
@@ -260,7 +260,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
$ret[] = 'substr(' . $field[0] . ', 1, ' . $field[1] . ')';
}
else {
- $ret[] = $field;
+ $ret[] = '"' . $field . '"';
}
}
return implode(', ', $ret);
@@ -355,7 +355,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
* The field to be dropped.
*/
public function dropField(&$ret, $table, $field) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP COLUMN ' . $field);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP COLUMN "' . $field . '"');
}
/**
@@ -378,7 +378,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
$default = is_string($default) ? "'$default'" : $default;
}
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN ' . $field . ' SET DEFAULT ' . $default);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN "' . $field . '" SET DEFAULT ' . $default);
}
/**
@@ -392,7 +392,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
* The field to be altered.
*/
public function fieldSetNoDefault(&$ret, $table, $field) {
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN ' . $field . ' DROP DEFAULT');
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ALTER COLUMN "' . $field . '" DROP DEFAULT');
}
/**
@@ -435,7 +435,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
*/
function addUniqueKey(&$ret, $table, $name, $fields) {
$name = '{' . $table . '}_' . $name . '_key';
- $ret[] = update_sql('ALTER TABLE {' . $table . '} ADD CONSTRAINT ' . $name . ' UNIQUE (' . implode(',', $fields) . ')');
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} ADD CONSTRAINT "' . $name . '" UNIQUE (' . implode(',', $fields) . ')');
}
/**
@@ -450,7 +450,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
*/
public function dropUniqueKey(&$ret, $table, $name) {
$name = '{' . $table . '}_' . $name . '_key';
- $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP CONSTRAINT ' . $name);
+ $ret[] = update_sql('ALTER TABLE {' . $table . '} DROP CONSTRAINT "' . $name . '"');
}
/**
@@ -578,7 +578,7 @@ class DatabaseSchema_pgsql extends DatabaseSchema {
}
protected function _createIndexSql($table, $name, $fields) {
- $query = 'CREATE INDEX {' . $table . '}_' . $name . '_idx ON {' . $table . '} (';
+ $query = 'CREATE INDEX "{' . $table . '}_' . $name . '_idx" ON {' . $table . '} (';
$query .= $this->_createKeySql($fields) . ')';
return $query;
}
diff --git a/includes/database/sqlite/schema.inc b/includes/database/sqlite/schema.inc
index 1d0672c16..d32ef9879 100644
--- a/includes/database/sqlite/schema.inc
+++ b/includes/database/sqlite/schema.inc
@@ -47,12 +47,12 @@ class DatabaseSchema_sqlite extends DatabaseSchema {
$sql = array();
if (!empty($schema['unique keys'])) {
foreach ($schema['unique keys'] as $key => $fields) {
- $sql[] = 'CREATE UNIQUE INDEX {' . $tablename . '}_' . $key . ' ON {' . $tablename . '} (' . $this->createKeySql($fields) . "); \n";
+ $sql[] = 'CREATE UNIQUE INDEX "{' . $tablename . '}_' . $key . '" ON {' . $tablename . '} (' . $this->createKeySql($fields) . "); \n";
}
}
if (!empty($schema['indexes'])) {
foreach ($schema['indexes'] as $index => $fields) {
- $sql[] = 'CREATE INDEX {' . $tablename . '}_' . $index . ' ON {' . $tablename . '} (' . $this->createKeySql($fields) . "); \n";
+ $sql[] = 'CREATE INDEX "{' . $tablename . '}_' . $index . '" ON {' . $tablename . '} (' . $this->createKeySql($fields) . "); \n";
}
}
return $sql;