1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-05-05 15:16:16 +02:00

- phpBB now uses a less ancient version of Oracle

git-svn-id: file:///svn/phpbb/trunk@8317 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
David M 2008-01-09 00:21:29 +00:00
parent 7193d91e40
commit b9b46a8b45
6 changed files with 43 additions and 34 deletions

View File

@ -150,15 +150,15 @@ $dbms_type_map = array(
'TINT:' => 'number(%d)', 'TINT:' => 'number(%d)',
'USINT' => 'number(4)', 'USINT' => 'number(4)',
'BOOL' => 'number(1)', 'BOOL' => 'number(1)',
'VCHAR' => 'varchar2(255)', 'VCHAR' => 'varchar2(255 char)',
'VCHAR:' => 'varchar2(%d)', 'VCHAR:' => 'varchar2(%d char)',
'CHAR:' => 'char(%d)', 'CHAR:' => 'char(%d char)',
'XSTEXT' => 'varchar2(1000)', 'XSTEXT' => 'varchar2(1000 char)',
'STEXT' => 'varchar2(3000)', 'STEXT' => 'varchar2(3000 char)',
'TEXT' => 'clob', 'TEXT' => 'clob',
'MTEXT' => 'clob', 'MTEXT' => 'clob',
'XSTEXT_UNI'=> 'varchar2(300)', 'XSTEXT_UNI'=> 'varchar2(100 char)',
'STEXT_UNI' => 'varchar2(765)', 'STEXT_UNI' => 'varchar2(255 char)',
'TEXT_UNI' => 'clob', 'TEXT_UNI' => 'clob',
'MTEXT_UNI' => 'clob', 'MTEXT_UNI' => 'clob',
'TIMESTAMP' => 'number(11)', 'TIMESTAMP' => 'number(11)',
@ -166,9 +166,9 @@ $dbms_type_map = array(
'DECIMAL:' => 'number(%d, 2)', 'DECIMAL:' => 'number(%d, 2)',
'PDECIMAL' => 'number(6, 3)', 'PDECIMAL' => 'number(6, 3)',
'PDECIMAL:' => 'number(%d, 3)', 'PDECIMAL:' => 'number(%d, 3)',
'VCHAR_UNI' => 'varchar2(765)', 'VCHAR_UNI' => 'varchar2(255 char)',
'VCHAR_UNI:'=> array('varchar2(%d)', 'limit' => array('mult', 3, 765, 'clob')), 'VCHAR_UNI:'=> 'varchar2(%d char)',
'VCHAR_CI' => 'varchar2(255)', 'VCHAR_CI' => 'varchar2(255 char)',
'VARBINARY' => 'raw(255)', 'VARBINARY' => 'raw(255)',
), ),

View File

@ -129,15 +129,15 @@ class phpbb_db_tools
'TINT:' => 'number(%d)', 'TINT:' => 'number(%d)',
'USINT' => 'number(4)', 'USINT' => 'number(4)',
'BOOL' => 'number(1)', 'BOOL' => 'number(1)',
'VCHAR' => 'varchar2(255)', 'VCHAR' => 'varchar2(255 char)',
'VCHAR:' => 'varchar2(%d)', 'VCHAR:' => 'varchar2(%d char)',
'CHAR:' => 'char(%d)', 'CHAR:' => 'char(%d char)',
'XSTEXT' => 'varchar2(1000)', 'XSTEXT' => 'varchar2(1000 char)',
'STEXT' => 'varchar2(3000)', 'STEXT' => 'varchar2(3000 char)',
'TEXT' => 'clob', 'TEXT' => 'clob',
'MTEXT' => 'clob', 'MTEXT' => 'clob',
'XSTEXT_UNI'=> 'varchar2(300)', 'XSTEXT_UNI'=> 'varchar2(100 char)',
'STEXT_UNI' => 'varchar2(765)', 'STEXT_UNI' => 'varchar2(255 char)',
'TEXT_UNI' => 'clob', 'TEXT_UNI' => 'clob',
'MTEXT_UNI' => 'clob', 'MTEXT_UNI' => 'clob',
'TIMESTAMP' => 'number(11)', 'TIMESTAMP' => 'number(11)',
@ -145,9 +145,9 @@ class phpbb_db_tools
'DECIMAL:' => 'number(%d, 2)', 'DECIMAL:' => 'number(%d, 2)',
'PDECIMAL' => 'number(6, 3)', 'PDECIMAL' => 'number(6, 3)',
'PDECIMAL:' => 'number(%d, 3)', 'PDECIMAL:' => 'number(%d, 3)',
'VCHAR_UNI' => 'varchar2(765)', 'VCHAR_UNI' => 'varchar2(255 char)',
'VCHAR_UNI:'=> array('varchar2(%d)', 'limit' => array('mult', 3, 765, 'clob')), 'VCHAR_UNI:'=> 'varchar2(%d char)',
'VCHAR_CI' => 'varchar2(255)', 'VCHAR_CI' => 'varchar2(255 char)',
'VARBINARY' => 'raw(255)', 'VARBINARY' => 'raw(255)',
), ),

View File

@ -50,7 +50,7 @@ class dbal_oracle extends dbal
$connect = $sqlserver . (($port) ? ':' . $port : '') . '/' . $database; $connect = $sqlserver . (($port) ? ':' . $port : '') . '/' . $database;
} }
$this->db_connect_id = ($new_link) ? @oci_new_connect($this->user, $sqlpassword, $connect, 'UTF8') : (($this->persistency) ? @oci_pconnect($this->user, $sqlpassword, $connect, 'UTF8') : @oci_connect($this->user, $sqlpassword, $connect, 'UTF8')); $this->db_connect_id = ($new_link) ? @oci_new_connect($this->user, $sqlpassword, $connect, 'AL32UTF8') : (($this->persistency) ? @oci_pconnect($this->user, $sqlpassword, $connect, 'AL32UTF8') : @oci_connect($this->user, $sqlpassword, $connect, 'AL32UTF8'));
return ($this->db_connect_id) ? $this->db_connect_id : $this->sql_error(''); return ($this->db_connect_id) ? $this->db_connect_id : $this->sql_error('');
} }

View File

@ -492,10 +492,15 @@ function connect_check_db($error_connect, &$error, $dbms_details, $table_prefix,
} }
$db->sql_freeresult($result); $db->sql_freeresult($result);
if (version_compare($stats['NLS_RDBMS_VERSION'], '9.2', '<') && $stats['NLS_CHARACTERSET'] !== 'UTF8') if (version_compare($stats['NLS_RDBMS_VERSION'], '9.2', '<'))
{ {
$error[] = $lang['INST_ERR_DB_NO_ORACLE']; $error[] = $lang['INST_ERR_DB_NO_ORACLE'];
} }
if ($stats['NLS_CHARACTERSET'] !== 'AL32UTF8')
{
$error[] = $lang['INST_ERR_DB_NO_ORACLE_NLS'];
}
} }
break; break;

View File

@ -231,22 +231,25 @@ $dbms_type_map = array(
'TINT:' => 'number(%d)', 'TINT:' => 'number(%d)',
'USINT' => 'number(4)', 'USINT' => 'number(4)',
'BOOL' => 'number(1)', 'BOOL' => 'number(1)',
'VCHAR' => 'varchar2(255)', 'VCHAR' => 'varchar2(255 char)',
'VCHAR:' => 'varchar2(%d)', 'VCHAR:' => 'varchar2(%d char)',
'CHAR:' => 'char(%d)', 'CHAR:' => 'char(%d char)',
'XSTEXT' => 'varchar2(1000)', 'XSTEXT' => 'varchar2(1000 char)',
'STEXT' => 'varchar2(3000)', 'STEXT' => 'varchar2(3000 char)',
'TEXT' => 'clob', 'TEXT' => 'clob',
'MTEXT' => 'clob', 'MTEXT' => 'clob',
'XSTEXT_UNI'=> 'varchar2(300)', 'XSTEXT_UNI'=> 'varchar2(100 char)',
'STEXT_UNI' => 'varchar2(765)', 'STEXT_UNI' => 'varchar2(255 char)',
'TEXT_UNI' => 'clob', 'TEXT_UNI' => 'clob',
'MTEXT_UNI' => 'clob', 'MTEXT_UNI' => 'clob',
'TIMESTAMP' => 'number(11)', 'TIMESTAMP' => 'number(11)',
'DECIMAL' => 'number(5, 2)', 'DECIMAL' => 'number(5, 2)',
'VCHAR_UNI' => 'varchar2(765)', 'DECIMAL:' => 'number(%d, 2)',
'VCHAR_UNI:'=> array('varchar2(%d)', 'limit' => array('mult', 3, 765, 'clob')), 'PDECIMAL' => 'number(6, 3)',
'VCHAR_CI' => 'varchar2(255)', 'PDECIMAL:' => 'number(%d, 3)',
'VCHAR_UNI' => 'varchar2(255 char)',
'VCHAR_UNI:'=> 'varchar2(%d char)',
'VCHAR_CI' => 'varchar2(255 char)',
'VARBINARY' => 'raw(255)', 'VARBINARY' => 'raw(255)',
), ),

View File

@ -231,9 +231,10 @@ $lang = array_merge($lang, array(
'INST_ERR_DB_FORUM_PATH' => 'The database file specified is within your board directory tree. You should put this file in a non web-accessible location.', 'INST_ERR_DB_FORUM_PATH' => 'The database file specified is within your board directory tree. You should put this file in a non web-accessible location.',
'INST_ERR_DB_NO_ERROR' => 'No error message given.', 'INST_ERR_DB_NO_ERROR' => 'No error message given.',
'INST_ERR_DB_NO_MYSQL' => 'The version of MySQL installed on the target server must be at least 4.1, phpBB 3.1 cannot be installed on an older version.', 'INST_ERR_DB_NO_MYSQL' => 'The version of MySQL installed on the target server must be at least 4.1, phpBB 3.1 cannot be installed on an older version.',
'INST_ERR_DB_NO_MYSQLI' => 'The version of MySQL installed on this machine is incompatible with the “MySQL with MySQLi Extension” option you have selected. Please try the “MySQL” option instead.', 'INST_ERR_DB_NO_MYSQLI' => 'The version of MySQL installed on the target server must be at least 4.1, phpBB 3.1 cannot be installed on an older version.',
'INST_ERR_DB_NO_SQLITE' => 'The version of the SQLite extension you have installed is too old, it must be upgraded to at least 2.8.2.', 'INST_ERR_DB_NO_SQLITE' => 'The version of the SQLite extension you have installed is too old, it must be upgraded to at least 2.8.2.',
'INST_ERR_DB_NO_ORACLE' => 'The version of Oracle installed on this machine requires you to set the <var>NLS_CHARACTERSET</var> parameter to <var>UTF8</var>. Either upgrade your installation to 9.2+ or change the parameter.', 'INST_ERR_DB_NO_ORACLE' => 'The version of Oracle installed on the target server must be at least 9.2, phpBB 3.1 cannot be installed on an older version.',
'INST_ERR_DB_NO_ORACLE_NLS' => 'You must configure Oracle so that the <var>NLS_CHARACTERSET</var> parameter is set to <var>ALU32UTF8</var>.',
'INST_ERR_DB_NO_FIREBIRD' => 'The version of Firebird installed on this machine is older than 2.0, please upgrade to a newer version.', 'INST_ERR_DB_NO_FIREBIRD' => 'The version of Firebird installed on this machine is older than 2.0, please upgrade to a newer version.',
'INST_ERR_DB_NO_FIREBIRD_PS'=> 'The database you selected for Firebird has a page size less than 8192, it must be at least 8192.', 'INST_ERR_DB_NO_FIREBIRD_PS'=> 'The database you selected for Firebird has a page size less than 8192, it must be at least 8192.',
'INST_ERR_DB_NO_POSTGRES' => 'The database you have selected was not created in <var>UNICODE</var> or <var>UTF8</var> encoding. Try installing with a database in <var>UNICODE</var> or <var>UTF8</var> encoding.', 'INST_ERR_DB_NO_POSTGRES' => 'The database you have selected was not created in <var>UNICODE</var> or <var>UTF8</var> encoding. Try installing with a database in <var>UNICODE</var> or <var>UTF8</var> encoding.',