Web-мастер: курс молодого бойца

Работа с FireBird,MS Access через ODBC

   

 Добавлено 2008-03-06 00:55:21
XANSHQ


Сообщений: 135
Зарегистрирован: 12.01.2008

Цитировать
Когда я дошел до темы PHP и ODBC,мне стала интересна работа c БД MS Access,FireBird.

Интересно то,что код пишется для всех СУБД один и тот же,изменяются лишь соответствующие настройки для соединения ODBC.

Код:

<?

$db
="";
$user="";
$pass="";

$connect=@odbc_connect($db,$user,$pass) or die("Couldn't connect to ODBC Database!");

$query="SELECT * FROM Workers";

$result=@odbc_prepare($connect,$query) or die("Couldn't prepare query!");

odbc_execute($result);

odbc_result_all($result,"bgcolor='whitesmoke' border=1");

odbc_free_result($result);

odbc_close($connect);

?>



Для подключения к СУБД MS Access в Источниках Данных выбираем драйвер *.mdb,пишем INFO в названии Источника данных и выбираем базу,пример базы есть в архиве odbc_examples.zip (помещен в архив INFO.mdb.zip)

После достаточно вписать эти настройки в скрипт исполнить его.

$db="INFO";
$user="Admin";
$pass="admin";


Работа с FireBird оказалась интереснее.
Дистрибутив можно скачать отсюда http://firebirdsql.org/index.php?op=files&id=engine_203

ODBC драйвера здесь http://firebirdsql.org/index.php?op=files&id=odbc


Настройка сервера http://firebirdsql.org/index.php?op=doc


<?

$db
="INFO_FireBird";
$user="sysdba";
$pass="fire";

$connect=@odbc_connect($db,$user,$pass) or die("Couldn't connect to FireBird Server!");

$query="SELECT * FROM Workers";

$result=odbc_prepare($connect,$query);

odbc_execute($result);

odbc_result_all($result,'bgcolor=whitesmoke border=1');

odbc_close($connect);


?>

Настраиваем ODBC в Источниках данных.Выбираем ODBC драйвер
FireBird/InterBase driver.В настройках вписываем Имя источника данных INFO_FireBird,выбираем БД (пример есть в архиве)
она создается так:
в директории FireBird/bin/ есть утилита isql (от интерактивный SQL),запускаем ее через консоль,и пишем

SQL>CREATE DATABASE 'D:\Data\info.fdb' (например)
CON>user 'SYSDBA' password 'masterkey';


Обязательно ставим точку с запятой,это означает конец команды.Дальше заполняйте ее по своему усмотрению.Но пример
есть в архиве.
Выбираем клиент fbclient.dll,выбираем пользователя
это админ SYSDBA,его пароль по умолчанию masterkey,но я поменял его следующим образом:
в папке FireBird/bin/ есть утилита gsec.exe,запускаем ее через консоль,и логинимся админом

gsec -user sysdba -password masterkey

Дальше меняем пароль

modify sysdba -pw fire

если пароль поменялся,то база не выдаст ошибки.

Так,в настройках ODBC впишите логин и пароль к базе(sysdba i fire).

Дальше запускаем скрипт и любуемся результатом:)


Люблю Java молотый..
Наверх  Посмотреть профиль   Сайт автора Отредактировано автором 06.03.2008
   
Быстрый ответ
 
Цвет шрифта: Закрыть все теги
Сообщение
Защитный код