mysql_query

mysql_query -- Verstuur een MySQL query

Beschrijving

resource mysql_query ( string query [, resource link_identifier])

mysql_query( ) stuurt een query naar de huidige actieve database op de server die wordt geassocieerd met de gegeven link identifier . Als link_identifier niet wordt gegeven , wordt de laatst geopende link aangenomen . Als er geen link open is , probeert de functie een link te maken alsof mysql_connect( ) wordt aangeroepen zonder argumenten , en die te gebruiken .

Opmerking : De query string moet niet eindigen met een puntkomma .

Alleen voor SELECT , SHOW , EXPLAIN en DESCRIBE queries geeft mysql_query( ) een resource identifier terug of FALSE Alleen voor SELECT , SHOW , EXPLAIN en DESCRIBE queries geeft mysql_query( ) een resource identifier terug of FALSE als de query niet correct werd uitgevoerd . Voor andere soorten SQL queries geeft mysql_query( ) TRUE terug bij succes en FALSE bij een fout . Een niet - FALSE waarde geeft aan dat de query legaal was en kon worden uitgevoerd door de server . Hij geeft echter niets aan over het aantal rijen betrokken of teruggegeven . Het is zeer goed mogelijk dat een query goed wordt uitgevoerd maar geen rijen wijzigt of teruggeeft .

De volgende query is syntactisch ongeldig , dus mysql_query( ) faaalt en geeft FALSE terug :

Voorbeeld 1 . MySQL query voorbeeld

 
php

 
$result

 
=

 
mysql_query(

 
"SELECT

 
*

 
WHERE

 
1=1"

 
)

 
or

 
die("Ongeldige

 
query

 
:

 
"

 
.

 
mysql_error())

 
;

 
?





De volgende query is semantisch ongeldig als my_col geen kolom is in de tabel my_tbl , dus mysql_query( ) faalt en geeft FALSE terug :

Voorbeeld 2 . MySQL query voorbeeld

 
?php

 
$result

 
=

 
mysql_query(

 
"SELECT

 
my_col

 
FROM

 
my_tbl"

 
)

 
or

 
exit

 
("Ongeldige

 
query

 
"

 
.

 
mysql_error())

 
;

 
?





mysql_query( ) zal ook falen en FALSE teruggeven als je geen permissie hebt om toegang te krijgen tot de tabellen die in de query genoemd worden .

Aangenomen dat de query goed gaat , kun je mysql_num_rows( ) aanroepen om uit te vinden hoeveel rijen er werden teruggegeven voor een SELECT statement , of mysql_affected_rows( ) om uit te vinden hoeveel rijen betrokken waren bij een DELETE , INSERT , REPLACE , of UPDATE query .

Alleen bij SELECT , SHOW , DESCRIBE en EXPLAIN queries geeft mysql_query( ) een nieuwe result identifier terug die je door kunt geven aan mysql_fetch_array( ) en andere functies die met resultaat tabellen van doen hebben . Wanneer je klaar bent met de resultaat set , kun je de bronnen die ermee geassocieerd zijn vrij maken door mysql_free_result( ) aan te roepen . Het geheugen zal echter automatisch worden vrijgemaakt aan het eind van de uitvoering van het script .

Zie ook : 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( ) en mysql_connect( ) .