mysql_query

mysql_query – Posíla MySQL příkaz.

Syntaxe:

resource mysql_query ( string query [, resource link_identifier] )

mysql_query() posíla příkaz aktivní databázi, na kterou se odkazuje ukazatel. Jestli parametr link_identifier neuveden, bude použito poslední aktivní spojení. V případě, že otevřená spojení nejsou, funkce se bude pokoušet navázat spojení s DBMS, analogický jako funkce mysql_connect() s prázdnými parametry.

Jenom pro příkazy SELECT, SHOW, EXPLAIN, DESCRIBE, mysql_query() vráci ukazatel na výsledek příkazu a nebo FALSE když příkaz nebyl vykonán. V ostatních případech (INSERT, UPDATE, DELETE, DROP a td.), mysql_query() vráci TRUE při úspěšnem vykonání příkazu a FALSE v případě chyby.

1. Chybné použíti, mysql_query() vráti FALSE:

<?php
$result mysql_query("SELECT * WHERE 1=1")
    or die(
"Invalid query: " mysql_error());
?>

2. Tento příkaz je chybný, jestli sloupec my_col neexistuje v tabulce my_tbl, I v tomto případě mysql_query() vráti FALSE:

<?php
$result mysql_query("SELECT `my_col` FROM `my_tbl`")
    or die(
"Invalid query: " mysql_error());
?>

mysql_query() taktéž vráti FALSE, jestli nemáte oprávnění pro práci s definovanou v příkazu tabulce.

Při práci s výsledkem příkazu, můžete použít funkci mysql_num_rows() pro zjištění počtu vrácených příkazem SELECT řádků a nebo mysql_affected_rows() pro zjištění počtu řádků vrácených příkazem DELETE, INSERT, REPLACE, UPDATE.

Jenom pro příkazy SELECT, SHOW, EXPLAIN, DESCRIBE, mysql_query() vráci ukazatel na výsledek příkazu, který můžete použít s funkci mysql_fetch_array() a s jinými funkcemi, kteři pracují s výsledkami příkazů.

Viz také: