如何在错误的数据库连接上设置自己的Exception?

时间:2013-05-14 19:37:54

标签: php database exception kohana kohana-3.2

当我尝试连接到错误的数据库时,我会收到类似这样的标准kohana异常消息:

Database_Exception [ 1049 ]: Unknown database 'mywrongdatabase'
MODPATH\database\classes\kohana\database\mysql.php [ 108 ]
    protected function _select_db($database)
    {
        if ( ! mysql_select_db($database, $this->_connection))
        {
            // Unable to select database
[line 108]          throw new Database_Exception(':error',
                array(':error' => mysql_error($this->_connection)),
                mysql_errno($this->_connection));
        }

        Database_MySQL::$_current_databases[$this->_connection_id] = $database;

这来自档案

MODPATH\database\classes\kohana\database\mysql.php [ 108 ]

如何设置(和哪里)自己的消息而不是标准kohana的例外?另外,我不想修改任何kohana标准模块(如数据库)或系统文件。

1 个答案:

答案 0 :(得分:1)

你可以尝试使用try / catch,但我留下了error_log并抛出了新的Exception,因为我不知道你需要哪一个。

try{
    //code with connection
} catch (Exception $e){  
    error_log("This is my own message");
    throw new Exception( 'Something really gone wrong', 0, $e);
}