Sto cercando di connettersi ad un database ODBC tramite PDO
classe di PHP:DOP errore di ritorno "non poteva trovare driver" con un DSN funzionante
$dsn = 'odbc:CS_HDZipCodes32bit';
$username = 'demo';
$password = 'skdemo!';
$connection = new PDO($dsn, $username, $password);
die(var_dump($connection));
ma quando lo faccio, ottengo l'errore:
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\inetpub\wwwroot\pdoClass.php:7 Stack trace: #0 C:\inetpub\wwwroot\pdoClass.php(7): PDO->__construct('odbc:CS_HDZipCo...', 'demo', 'skdemo!') #1 {main} thrown in C:\inetpub\wwwroot\pdoClass.php on line 7
Il valore $dsn
è il nome del DSN che ho creato nel mio gestore ODBC.
So che questo particolare DSN funziona perché sono stato in grado di costruire un altro file demo e connettersi via odbc_connect
:
$connection = odbc_connect("CS_HDZipCodes32bit", 'demo', 'skdemo!');
if(!$connection){
die('connection failed');
}
$statement = "SELECT * FROM ZipCodes";
$result = odbc_exec($connection, $statement);
// Outputs the zips as expected
var_dump(odbc_result_all($result));
ho scavato attraverso la documentazione PDO-ODBC così come altri risorse online, ma non riesco a capire perché PHP non è in grado di trovare il driver quando si prova da PDO.
Qualche idea?
Aggiornamento
ho spuntato aperto la mia pagina phpinfo per assicurarsi che il driver ODBC è installato per il commento di Marc B:
Sembra che il driver è installato a meno che non si tratta di un driver diverso .
Un altro aggiornamento
Su ulteriore controllo della mia phpini per ogni ulteriore commento di Marc B, sembra che io non ho il driver specifico POD ODBC installato:
Quindi, ecco, se Ho avuto il driver ODBC per pdo installato, odbc
sarebbe alla fine della lista, corretto?
hai provato odbc_connect sul DSN "cattivo"? –
Sì, il blocco di codice nella parte inferiore era che io usavo lo stesso dsn dall'alto con odbc_connect. –
ok, allora hai controllato se il driver pdo odbc è installato? pdo ha i suoi driver e non si limita a "avvolgere" le funzioni di 'odbc _ *()'. –