База данных PHP и Microsoft Access – подключение и CRUD

У меня нет опыта доступа.

Как выполнить $rs = new com("ADODB.RecordSet"); update / insert / delete / select с и без $rs = new com("ADODB.RecordSet"); ?

PDO

Если вы хотите взаимодействовать с базой данных MS Access с помощью PHP, PDO доступен для вас.

 <?php try { $pdo = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\accounts.mdb;Uid=Admin"); } catch (PDOException $e) { echo $e->getMessage(); } 

При использовании PDO из-за унифицированного интерфейса для операций с БД у вас есть возможность сделать ваше приложение более портативным в различных системах RDBM. Все, что вам нужно сделать, это предоставить строку подключения для нового экземпляра PDO и установить правильный драйвер PDO .

В результате этого унифицированного интерфейса ваше приложение легко переносится из MS Access в MySQL, SQLite, Oracle, Informix, DB2 и т. Д., Что, безусловно, имеет место, если он достаточно велик.

Вот пример вставки:

 <?php try { // Connect, // Assuming that the DB file is available in `C:\animals.mdb` $pdo = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\animals.mdb;Uid=Admin"); // INSERT data $count = $pdo->exec("INSERT INTO animals(animal_type, animal_name) VALUES ('kiwi', 'troy')"); // echo the number of affected rows echo $count; // close the database connection // See: http://php.net/manual/en/pdo.connections.php $pdo = null; } catch (PDOException $e) { echo $e->getMessage(); } 

ODBC

Если вы не хотите использовать PDO для некоторых безумных причин, вы можете посмотреть в ODBC .

Вот пример:

 <?php if (! $conn = odbc_connect('northwind', '', '')) { exit("Connection Failed: $conn"); } if (! $rs = odbc_exec($conn, 'SELECT * FROM customers')) { exit('Error in SQL'); } while (odbc_fetch_row($rs)) { echo 'Company name: ', odbc_result($rs, 'CompanyName'), PHP_EOL; echo 'Contact name: ', odbc_result($rs, 'ContactName'), PHP_EOL; } odbc_close($conn);