diff options
author | Meik Sievertsen <acydburn@phpbb.com> | 2006-07-09 16:23:57 +0000 |
---|---|---|
committer | Meik Sievertsen <acydburn@phpbb.com> | 2006-07-09 16:23:57 +0000 |
commit | 46af817cb058e2eecd89081af4a40075426a32ef (patch) | |
tree | d27156cb086223b91b8c67f23db969a980e1b7b8 /phpBB/includes/db | |
parent | 455add06f29400af3176eea7c4958ed772934460 (diff) | |
download | forums-46af817cb058e2eecd89081af4a40075426a32ef.tar forums-46af817cb058e2eecd89081af4a40075426a32ef.tar.gz forums-46af817cb058e2eecd89081af4a40075426a32ef.tar.bz2 forums-46af817cb058e2eecd89081af4a40075426a32ef.tar.xz forums-46af817cb058e2eecd89081af4a40075426a32ef.zip |
- tackle some usability issues
- fix bug #3147
- added the lock-images made by SHS`
- fixed MSSQL errors (adding the correct ESCAPE sequence)
git-svn-id: file:///svn/phpbb/trunk@6161 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/db')
-rw-r--r-- | phpBB/includes/db/firebird.php | 24 | ||||
-rw-r--r-- | phpBB/includes/db/mssql.php | 22 | ||||
-rw-r--r-- | phpBB/includes/db/mssql_odbc.php | 22 | ||||
-rw-r--r-- | phpBB/includes/db/mysql.php | 8 | ||||
-rw-r--r-- | phpBB/includes/db/mysql4.php | 8 | ||||
-rw-r--r-- | phpBB/includes/db/mysqli.php | 8 | ||||
-rw-r--r-- | phpBB/includes/db/oracle.php | 8 | ||||
-rw-r--r-- | phpBB/includes/db/postgres.php | 10 | ||||
-rw-r--r-- | phpBB/includes/db/sqlite.php | 8 |
9 files changed, 118 insertions, 0 deletions
diff --git a/phpBB/includes/db/firebird.php b/phpBB/includes/db/firebird.php index d5a91fe9bb..3a0567d90a 100644 --- a/phpBB/includes/db/firebird.php +++ b/phpBB/includes/db/firebird.php @@ -32,6 +32,7 @@ if (!defined('SQL_LAYER')) class dbal_firebird extends dbal { var $last_query_text = ''; + var $service_handle = false; /** * Connect to server @@ -45,10 +46,28 @@ class dbal_firebird extends dbal $this->db_connect_id = ($this->persistency) ? @ibase_pconnect($this->server . ':' . $this->dbname, $this->user, $sqlpassword, false, false, 3) : @ibase_connect($this->server . ':' . $this->dbname, $this->user, $sqlpassword, false, false, 3); + /** + * @todo evaluate the implications of opening a service connection + */ + $this->service_handle = @ibase_service_attach($this->server, $this->user, $sqlpassword); + return ($this->db_connect_id) ? $this->db_connect_id : $this->sql_error(''); } /** + * Version information about used database + */ + function sql_server_info() + { + if ($this->service_handle !== false) + { + return @ibase_server_info($this->service_handle, IBASE_SVC_SERVER_VERSION); + } + + return 'Firebird/Interbase'; + } + + /** * SQL Transaction * @access: private */ @@ -323,6 +342,11 @@ class dbal_firebird extends dbal */ function _sql_close() { + if ($this->service_handle !== false) + { + @ibase_service_detach($this->service_handle); + } + return @ibase_close($this->db_connect_id); } diff --git a/phpBB/includes/db/mssql.php b/phpBB/includes/db/mssql.php index cc4de3695a..efe0b4333d 100644 --- a/phpBB/includes/db/mssql.php +++ b/phpBB/includes/db/mssql.php @@ -56,6 +56,28 @@ class dbal_mssql extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + $result_id = @mssql_query("SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY('productlevel'), SERVERPROPERTY('edition')", $this->db_connect_id); + + $row = false; + if ($result_id) + { + $row = @mssql_fetch_assoc($result_id); + @mssql_free_result($result_id); + } + + if ($row) + { + return 'MSSQL<br />' . implode(' ', $row); + } + + return 'MSSQL'; + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/mssql_odbc.php b/phpBB/includes/db/mssql_odbc.php index 658251ea2a..8f37206817 100644 --- a/phpBB/includes/db/mssql_odbc.php +++ b/phpBB/includes/db/mssql_odbc.php @@ -50,6 +50,28 @@ class dbal_mssql_odbc extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + $result_id = @odbc_exec($this->db_connect_id, "SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY('productlevel'), SERVERPROPERTY('edition')"); + + $row = false; + if ($result_id) + { + $row = @odbc_fetch_array($result_id); + @odbc_free_result($result_id); + } + + if ($row) + { + return 'MSSQL (ODBC)<br />' . implode(' ', $row); + } + + return 'MSSQL (ODBC)'; + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/mysql.php b/phpBB/includes/db/mysql.php index fd7e10a822..60e56e2964 100644 --- a/phpBB/includes/db/mysql.php +++ b/phpBB/includes/db/mysql.php @@ -56,6 +56,14 @@ class dbal_mysql extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + return 'MySQL ' . @mysql_get_server_info($this->db_connect_id); + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/mysql4.php b/phpBB/includes/db/mysql4.php index 13271d9346..6028a7085f 100644 --- a/phpBB/includes/db/mysql4.php +++ b/phpBB/includes/db/mysql4.php @@ -58,6 +58,14 @@ class dbal_mysql4 extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + return 'MySQL ' . @mysql_get_server_info($this->db_connect_id); + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/mysqli.php b/phpBB/includes/db/mysqli.php index b93bf98c1a..1257621729 100644 --- a/phpBB/includes/db/mysqli.php +++ b/phpBB/includes/db/mysqli.php @@ -58,6 +58,14 @@ class dbal_mysqli extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + return 'MySQL(i) ' . @mysqli_get_server_info($this->db_connect_id); + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/oracle.php b/phpBB/includes/db/oracle.php index 499316ac80..d891cab337 100644 --- a/phpBB/includes/db/oracle.php +++ b/phpBB/includes/db/oracle.php @@ -48,6 +48,14 @@ class dbal_oracle extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + return 'Oracle ' . @ociserverversion($this->db_connect_id); + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/postgres.php b/phpBB/includes/db/postgres.php index ad8e0a01da..ccc038075e 100644 --- a/phpBB/includes/db/postgres.php +++ b/phpBB/includes/db/postgres.php @@ -85,6 +85,16 @@ class dbal_postgres extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + $version = @pg_version($this->db_connect_id); + + return 'PostgresSQL' . ((!empty($version)) ? ' ' . $version['client'] : ''; + } + + /** * SQL Transaction * @access: private */ diff --git a/phpBB/includes/db/sqlite.php b/phpBB/includes/db/sqlite.php index 87d9af8c7f..7b23171187 100644 --- a/phpBB/includes/db/sqlite.php +++ b/phpBB/includes/db/sqlite.php @@ -52,6 +52,14 @@ class dbal_sqlite extends dbal } /** + * Version information about used database + */ + function sql_server_info() + { + return 'SQLite ' . @sqlite_libversion(); + } + + /** * SQL Transaction * @access: private */ |