0

I'm trying to use Zend Framework with SQL server 2005 express (through Pdo_Mssql with wamp installation) but seem that pdo can't connect to SQL. This is my code:

require '../application/bootstrap.php'; 

try {
    $db = Zend_Db::factory('Pdo_Mssql', array(
    'host'     => 'localhost',
    'username' => 'sa',
    'password' => 'verystrongpass',
    'dbname'   => 'msdb'
));
    $db->getConnection();
} catch (Zend_Db_Adapter_Exception $e) {
    $e->getMessage();
} catch (Zend_Exception $e) {
   $e->getMessage();
}


$sql = 'SELECT * FROM table';

$result = $db->fetchAll($sql);

echo "----------------" . var_dump($result);

and the error result is always:

Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'SQLSTATE[01002] Unable to connect: SQL Server is unavailable or does not exist. (severity 9)' in C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Pdo\Abstract.php:130 Stack trace: #0 C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Pdo\Mssql.php(135): Zend_Db_Adapter_Pdo_Abstract->_connect()

1 C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Abstract.php(389):Zend_Db_Adapter_Pdo_Mssql->_connect()

2 C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Pdo\Abstract.php(205):Zend_Db_Adapter_Abstract->query('SELECT * FROM t...', Array)

3 C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Abstract.php(616): Zend_Db_Adapter_Pdo_Abstract->query('SELECT * FROM t...', Array)

4 C:\Documents and Settings\Luca\Documenti\Workspace\web\db\public\index.php(27): Zend_Db_Adapter_Abstract->fetchAll('SELECT * FROM t...') #5 {main} thrown in C:\wamp\bin\php\php5.2.5\lib\Zend\Db\Adapter\Pdo\Abstract.php on line 130

So anyone have some experience with ZF + SQL server, SQL server need some special configuration? In istallation time i've only specify to use the default istance and to use mixed authentication. Moreover I can successful connect with db through Microsoft SQL server management studio express.

3 Answers 3

1

All SQL Server Express installations on a named instance of SQLEXPRESS rather than a default instance - see this.

So your host should look like

'host'     => 'localhost\SQLEXPRESS'
Sign up to request clarification or add additional context in comments.

Comments

0

Can you pls check in you PHP.ini file, that you enabled the Pdo_Mssq.dll

If not remove the ";" in front of the Pdo_Mssql.dll

Dan

1 Comment

No spam footers please; they will be removed.
0

I think your

'host' => 'localhost\SQLEXPRESS' configuration

should be like :

'host' => 'computer_name\SQLEXPRESS'

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.