Приветствую всех! Вот начал изучать работу с базами данных - и начал с ODBC (вернее необходимо использовать данные в аксессе как базу данных) нашел в одном из учебников шаблон кода - но он у меня как то не работает... (Администрирование источников данных ODBC я поправил) Вот такой код мне предложили в учебнике: PHP: <?php // Подключиться к источнику данных ODBC 'ContactDB' ; $connect = odbc_connect("contacts", "",""); //or die("Couldn't connect to datasource."); // Создать текст запроса $query = "name, famil, adres, phohe"; // Подготовить запрос $result = odbc_prepare($connect, $query); // Выполнить запрос и вывести результаты odbc_execute($result); odbc_result_all($result, "BGCOLOR='#c0c0c0' border=1"); // Обработка результатов закончена, освободить память odbc_free_result($result); // Закрыть соединение odbc_close($connect); ?> Выдает вот такие ошибки... не совсем понимаю чего надо сделать... Warning: odbc_prepare() [function.odbc-prepare]: SQL error: [Microsoft][Драйвер ODBC Microsoft Access] Ошибочная инструкция SQL; предполагалось 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' или 'UPDATE'., SQL state 37000 in SQLPrepare in Z:\home\cd.ru\www\bd_smotr.php on line 14 Warning: odbc_execute(): supplied argument is not a valid ODBC result resource in Z:\home\cd.ru\www\bd_smotr.php on line 18 Warning: odbc_result_all(): supplied argument is not a valid ODBC result resource in Z:\home\cd.ru\www\bd_smotr.php on line 20 Warning: odbc_free_result(): supplied argument is not a valid ODBC result resource in Z:\home\cd.ru\www\bd_smotr.php on line 23
Я хоть никогда и не работал с этими инструкциями, но также полагаю, согласно стандартам SQL, что $query неправильный, а ошибка это только подтверждает. Попробуйте: PHP: <?php // Code $query = "SELECT name, famil, adres, phohe FROM имя_таблицы"; ?>
Да спасибо, только отправил пост и сам увидел эту ошибку - пошел править и увидел Ваш пост.... но после правки все равно корректно не работает - выдает теперь вот такую ошибку : Warning: odbc_execute() [function.odbc-execute]: SQL error: [Microsoft][Драйвер ODBC Microsoft Access] Слишком мало параметров. Требуется 1., SQL state 07001 in SQLExecute in Z:\home\cd.ru\www\bd_smotr.php on line 18 No rows found Что за драйвер и каких параметров мало понять не могу...
По-идее "SELECT * FROM таблица" должно хватить для любого запроса. Честно, не знаю, но посмотрев на примеры запросов в интернете к этой БД, они практически идентичны в синтаксисе SELECT, INSERT, DELETE
c драйвером вроде разобрались... но по прежнему выдает ошибку на функции odbc_result_all и odbc_free_result такого вида - Warning: odbc_result_all(): supplied argument is not a valid ODBC result resource in Z:\home\cd.ru\www\bd_smotr.php on line 40 Warning: odbc_free_result(): supplied argument is not a valid ODBC result resource in Z:\home\cd.ru\www\bd_smotr.php on line 42 скрипт такой: PHP: $connect = odbc_connect("contacts", "user", "secret") or die("Could not connect to ODBC database"); print "Currently connected to ODBC database!"; $query = 'SELECT name FROM contacts'; $result = odbc_prepare($connect, $query); $result = odbc_execute($result); $result_all = odbc_result_all($result, "BGCOLOR='#c0c0c0' border='1'"); odbc_free_result($result); odbc_close($connect);