A mysql_query() függvény kérést küld a megadott kapcsolat-azonosítójú szerver aktív adatbázisához. Ha nem adsz meg link_identifier-t, akkor a legutóbb megnyitott kapcsolatot használja a függvény. Ha nincs nyitva ilyen kapcsolat, akkor a függvény megpróbál nyitni egyet, mintha a mysql_connect() függvényt hívtuk volna paraméterek nélkül.
Megjegyzés: A kérésnek nem szabad pontosvesszővel végződnie.
A SELECT utasításra alkalmazott mysql_query() függvény eredményazonosítóval vagy FALSE-sal tér vissza a kérés végrehajtásától függően. Egyéb esetekben mysql_query() függvény TRUE-val (nemnulla) vagy FALSE-szal tér vissza, attól függően, hogy a kérés teljesítése sikeres volt-e. A TRUE visszatérési érték azt jelenti, hogy a kérés szintaktikailag helyes volt, és lefuttatta a szerver. Az érintett sorok számáról azonban nem mond semmit. Előfordulhat ugyanis, hogy a kérés sikeresen lefutott, de nem érintett egyetlen sort sem, vagy az eredményben egyetlen sor sincs.
A következő kérés szintaktikailag rossz, igy a mysql_query() függvény meghiúsul és FALSE eredményt ad:
Az alábbi kérés szemantikailag helytelen, ha nincs my_col nevű oszlop a my_tbl nevű táblában, így a mysql_query() meghiúsul és FALSE értékkel tér vissza.
A mysql_query() függvény akkor is meghiúsul és FALSE értékkel tér vissza, ha nincs megfelelő engedélyed a kérés által hivatkozott táblá(k)hoz.
Feltéve, hogy a kérés sikeres, meghívhatod a mysql_num_rows() függvényt, hogy kiderítsd, hány sort kaptál vissza a SELECT kérésedre, vagy a mysql_affected_rows() függvényt, hogy megtudd hány sort érintett a DELETE, NSERT, REPLACE vagy UPDATE kérésed.
SELECT kérés esetében a mysql_query() függvény egy új eredmény-azonosítót ad vissza, amit később a mysql_fetch_array() vagy más eredménytáblákkal foglalkozó függvénnyel használhatsz. Ha az eredményre már nincs szükség és memóriafóbiád van, akkor a mysql_free_result() függvénnyel a foglalt memóriát felszabadíthatod, normál esetben megvárod a program végét és a memória felszabadul.
Lásd még a mysql_num_rows(), mysql_affected_rows(), mysql_db_query(), mysql_unbuffered_query(), mysql_free_result(), mysql_fetch_array(), mysql_fetch_row(), mysql_fetch_assoc(), mysql_result(), mysql_select_db() és a mysql_connect() függvényeket!