Новые книги

Гений маркетинга Мартин Линдстром изучает бизнес больше двадцати лет. В своей новой книге он приоткрыл тайны своих исследований, рассказав о том, с помощью каких новых методов сегодняшние манипуляторы промывают наш мозг, какие психологические трюки и ловушки используют, чтобы заставить раскошелиться. Однако, автор не призывает нас отказаться от покупки брендовых товаров, он лишь хочет научить нас принимать более разумные решения. А те, кто стоит по другую сторону баррикад, поймут, чего еще не хватает в их арсенале маркетинговых инструментов.
Бестселлер в компьютерной литературе для тех, кому за …, поможет каждому желающему освоить компьютер легко и просто не только в теории, но и на практике! В книге подробно описан каждый важный процесс в освоении киберпространства, а также проиллюстрирован каждый шаг.

От великого множества учебников по компьютерам он отличается тем, что написан дилетантом и протестирован такими же дилетантами. Как показала практика, Букварь, написанный человеком, познающим компьютер, принес большую пользу ученикам пенсионного возраста. Автор помогает своим сверстникам, для которых тяжело сразу понять, какой кнопкой кликать – и что значит «кликать» вообще – познать азы компьютерной грамотности.

mysql_query



Учебник РНР
Назад Вперёд

mysql_query

(PHP 3, PHP 4)

mysql_query - отправляет MySQL-запрос/query.

Описание

resource mysql_query (string query [, resource link_identifier [, int result_mode]])

mysql_query() отправляет запрос текущей активной БД на сервере, ассоциированной со специфицированным идентификатором ссылки/link_identifier. Если link_identifier не специфицирован, принимается последняя открытая ссылка. Если такой ссылки нет, функция пытается установить ссылку, как при вызове mysql_connect() без аргументов, и использует её.

Необязательный параметр result_mode может иметь значение MYSQL_USE_RESULT и MYSQL_STORE_RESULT. По умолчанию MYSQL_STORE_RESULT, т.е. результат буферизуется. См. также mysql_unbuffered_query() - это функция противоположного действия.

Примечание: строка запроса не должна заканчиваться точкой с запятой (;).

Только для операторов SELECT, SHOW, EXPLAIN или DESCRIBE функция mysql_query() возвращает идентификатор ресурса, FALSE если запрос не был выполнен корректно. Для других типов SQL-операторов mysql_query() возвращает TRUE при успехе, FALSE при ошибке. Не-FALSE return-значение означает, что запрос был правильным и может быть выполнен на сервере. Она ничего не сообщает о количестве задействованных или возвращаемых рядов. Это отличная возможность для запроса продолжить выполнениt, не задействуя и не возвращая рядов.

Следующий запрос синтаксически неверен, поэтому mysql_query() терпит неудачу и возвращает FALSE:

Пример 1. mysql_query()
<php
$result = mysql_query("SELECT * WHERE 1=1")
    or die("Invalid query");
?>

Следующий запрос семантически неверен, поскольку my_col не является столбцом таблицы my_tbl, поэтому mysql_query() терпит неудачу и возвращает FALSE:

Пример 2. mysql_query()
<?php
$result = mysql_query("SELECT my_col FROM my_tbl")
    or die ("Invalid query");
?>

mysql_query() терпит также неудачу и возвращает FALSE, если вы не имеете прав доступа к таблице(-ам), на которую сделана ссылка в запросе.

Приняв, что запрос прошёл, вы можете вызвать mysql_num_rows() для определения количества рядов, возвращаемых оператором SELECT, или mysql_affected_rows() для определения количества рядов, задействованных оператором DELETE, INSERT, REPLACE или UPDATE.

Только для SELECT, SHOW, DESCRIBE или EXPLAIN функция mysql_query() возвращает новый идентификатор результата, который вы передаёте в mysql_fetch_array() и другие функции, работающие с результирующими таблицами. По окончании работы с результирующим набором вы можете освободить ресурсы, ассоциированные с ним, вызвав mysql_free_result(). В то же время память будет освобождаться автоматически по окончании работы скрипта.

См. также mysql_num_rows(), mysql_affected_rows(), mysql_unbuffered_query(), mysql_free_result(), mysql_fetch_array(), mysql_fetch_row(), mysql_fetch_assoc(), mysql_result(), mysql_select_db() и mysql_connect().


Назад Оглавление Вперёд
mysql_ping Вверхmysql_real_escape_string