1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-30 21:40:43 +02:00

Fix column handling in db updater, custom profile fields an db tools for firebird DBMS (Bug #44555)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9492 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Meik Sievertsen
2009-04-28 11:18:02 +00:00
parent 0f085848a6
commit ab122983f7
5 changed files with 10 additions and 8 deletions

View File

@@ -1539,7 +1539,7 @@ class acp_profile
case 'firebird':
// We are defining the biggest common value, because of the possibility to edit the min/max values of each field.
$sql = 'ALTER TABLE ' . PROFILE_FIELDS_DATA_TABLE . " ADD \"$field_ident\" ";
$sql = 'ALTER TABLE ' . PROFILE_FIELDS_DATA_TABLE . ' ADD "' . strtoupper($field_ident) . '" ';
switch ($field_type)
{

View File

@@ -1162,7 +1162,8 @@ class acp_users
foreach ($cp_data as $key => $value)
{
$cp_data[$left_delim . $key . $right_delim] = $value;
// Firebird is case sensitive with delimiter
$cp_data[$left_delim . (($db->sql_layer == 'firebird') ? strtoupper($key) : $key) . $right_delim] = $value;
unset($cp_data[$key]);
}

View File

@@ -1115,7 +1115,7 @@ class phpbb_db_tools
switch ($this->sql_layer)
{
case 'firebird':
$statements[] = 'ALTER TABLE "' . $table_name . '" ADD "' . $column_name . '" ' . $column_data['column_type_sql'];
$statements[] = 'ALTER TABLE ' . $table_name . ' ADD "' . strtoupper($column_name) . '" ' . $column_data['column_type_sql'];
break;
case 'mssql':
@@ -1207,7 +1207,7 @@ class phpbb_db_tools
switch ($this->sql_layer)
{
case 'firebird':
$statements[] = 'ALTER TABLE "' . $table_name . '" DROP "' . $column_name . '"';
$statements[] = 'ALTER TABLE ' . $table_name . ' DROP "' . strtoupper($column_name) . '"';
break;
case 'mssql':
@@ -1626,7 +1626,7 @@ class phpbb_db_tools
{
case 'firebird':
// Change type...
$statements[] = 'ALTER TABLE "' . $table_name . '" ALTER COLUMN "' . $column_name . '" TYPE ' . ' ' . $column_data['column_type_sql'];
$statements[] = 'ALTER TABLE ' . $table_name . ' ALTER COLUMN "' . strtoupper($column_name) . '" TYPE ' . ' ' . $column_data['column_type_sql'];
break;
case 'mssql':