andruxin
@andruxin

Yii + ADODB(Access). Есть рецепты?

Нужно к сайту прицепить Access базу данных, знаю как работать с ней в нативном PHP, но не нашёл примеров можно работать с БД из Yii. Имел кто опыты по скрещиванию?

БД рабочая поэтому ковертировать её в mysql нельзя.

вот нативный пример.
$cnn = new COM("ADODB.Connection",null,CP_UTF8) or die("Cannot start ADO");
$cnn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\db.mdb;Persist Security Info=False");
$rs = $cnn->Execute("select * from table");

while(!$rs->EOF){
  $dt = $rs->Fields["date"]->Value;
  echo $dt;
  $rs->MoveNext();
}
$rs=$cnn=null;
  • Вопрос задан
  • 3594 просмотра
Пригласить эксперта
Ответы на вопрос 2
fornit1917
@fornit1917
Yii с базой данных работает через PDO. В PDO вроде бы есть поддержка ODBC, через нее по идее можно с Access-ом работать.

Вот пример connection string:
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$dbName; Uid=; Pwd=;");


Нечто подобное в конфиге Yii для db надо написать.
Ответ написан
andruxin
@andruxin Автор вопроса
Единственное до чего смог дойти.
в main.php
'db'=>array(
	'class'=>'CDbConnection',
	'connectionString' => 'odbc:DRIVER={Microsoft Access Driver (*.mdb)};Dbq=d:\\db.mdb;',
	'username'=>'',
	'password'=>'',
        ),


$res=Yii::app()->db->createCommand('select * from table');
	$rows=$res->queryAll();
	foreach($rows as $row) {
		print_r($row);
	}


Ни о каких моделях AR не может идти и речи. Получается здесь нужно будет только ручками.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы