Descripción
int
mysql_query ( string sentencia [, int identificador_de_enlace])
mysql_query() envia una sentencia a la base activa
en el servidor asociado al identificador de enlace. Si no es especificado
un identificador_de_enlace, se asumira el ultilmo
enlace abierto. Si no hay ningun enlace abierto, la función
intenta estalecer un enlace como si se llamara función
mysql_connect() sin argumentos, y lo utiliza.
La sentencia no puede terminar por punto y coma.
mysql_query() devuelve TRUE (no-cero) o FALSE
para indicar si la sentencia se ha ejecutado correctamente o no. Un valor
TRUE significa que la sentencia era correcta y pudo ser ejecutada en el
servidor. No indica nada sobre el numero de fila devueltas. Es
perfectamente posible que la sentencia se ejecute correctamente pero que
no devuelve ninguna fila.
La siguiente sentencia es invalida sintacticamente, asi que
mysql_query() falla y devuelve FALSE:
Ejemplo 1. mysql_query() <?php
$result = mysql_query ("SELECT * WHERE 1=1")
or die ("Invalid query");
?> |
|
La siguiente sentencia es invalida semanticamente si
my_col no es una columna de la tabla
my_tbl, asi que mysql_query()
falla y devuelve FALSE:
Ejemplo 2. mysql_query() <?php
$result = mysql_query ("SELECT my_col FROM my_tbl")
or die ("Invalid query");
?> |
|
mysql_query() fallara tambien y devolvera FALSE
si no se tiene el permiso de acceso a la tabla especificada en la
sentencia.
Asumiendo la sentencia tenga exito, se puede llamar a
mysql_affected_rows() para saber cuantas filas
fueron afectadas (para DELETE, INSERT, REPLACE, o UPDATE )
Para las sentencias SELECT, mysql_query() devuelve
un nuevo identificador de resultado que se puede pasar a
mysql_result(). Cuando se acabe de utilizar el
resultado, se pueden liberar los recursos asociados utilizando
mysql_free_result().
Ver también: mysql_affected_rows(),
mysql_db_query(),
mysql_free_result(),
mysql_result(),
mysql_select_db(), and
mysql_connect().