Как добавить соединение MSAccess в CodeIgniter или CakePHP? - PullRequest
3 голосов
/ 07 октября 2008

Я пытаюсь использовать базу данных Microsoft Access для демонстрационного проекта, который я собираюсь сделать в CodeIgniter или CakePHP. Игнорируя возможную глупость использования Microsoft Access, я не смог точно выяснить, как строка подключения соответствует настройкам базы данных каркасов. В простом PHP я могу использовать этот код для подключения к базе данных Access:

$db_connection = odbc_connect(
  "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\\path\\to\\db.mdb", 
  "ADODB.Connection", "", "SQL_CUR_USE_ODBC"
);

Как эти строки соответствуют настройкам БД Code Igniter? Это не совсем работает:

$db['access']['hostname'] = "{Microsoft Access Driver (*.mdb)}";
$db['access']['username'] = "ADODB.Connection";
$db['access']['password'] = "";
$db['access']['database'] = "\\path\\to\\db.mdb";
$db['access']['dbdriver'] = "odbc";
$db['access']['dbprefix'] = "";
$db['access']['pconnect'] = TRUE;
$db['access']['db_debug'] = TRUE;
$db['access']['cache_on'] = FALSE;
$db['access']['cachedir'] = "";
$db['access']['char_set'] = "utf8";
$db['access']['dbcollat'] = "utf8_general_ci";

Ответы [ 2 ]

2 голосов
/ 04 ноября 2008

Попробуйте настроить DSN и перейти к следующему:

$db['access']['hostname'] = "<dsn name>";
$db['access']['username'] = "";
$db['access']['password'] = "";
$db['access']['database'] = "<dsn name>";

В документации CodeIgniter также есть раздел, в котором рассматриваются строки подключения:

http://codeigniter.com/user_guide/database/connecting.html

0 голосов
/ 04 ноября 2008

Можно ли вместо этого использовать движок SQL Express (бесплатно!) И просто импортировать / экспортировать свою базу данных MS Access? Вы могли бы поблагодарить меня позже за это. : -)

Другой вариант - использовать библиотеку ADOdb вместо собственной библиотеки БД CI, хотя вы потеряете поддержку Active Record от CI и вам придется переписывать определенные библиотеки в CI, чтобы использовать ее, но это того стоит, если вы все еще хотите использовать CI с БД, которая не поддерживается вашим приложением. Я должен был сделать это рано, когда были ошибки в реализации Postgres.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...