Anda di halaman 1dari 51

Funciones MySQL

Pgina 1 de 51

Manual de PHP Anterior Siguiente

XCVIII. Funciones MySQL Introduccin


Estas funciones le permiten acceder a servidores de bases de datos MySQL. Puede encontrar ms informacin sobre MySQL en http://www.mysql.com/. La documentacin de MySQL puede encontrarse en http://dev.mysql.com/doc/.

Requisitos
Para contar con stas funciones, debe compilar PHP con soporte MySQL.

Instalacin
Para la compilacin, simplemente use la opcin de configuracin --with-mysql[=DIR], en donde el valor opcional [DIR] apunta al directorio de instalacin de MySQL. Aunque esta extensin de MySQL es compatible con MySQL 4.1.0 y posteriores, no soporta la funcionalidad extra que tales versiones ofrecen. Para eso, use la extensin MySQLi. Si quisiera instalar la extensin mysql junto con la extensin mysqli, debe usar la misma biblioteca de cliente para evitar cualquier conflicto.

Instalacin en Sistemas Linux


PHP 4
La opcin --with-mysql est habilitada por defecto. Para desactivar este comportamiento predeterminado, usted puede usar la opcin de configuracin --without-mysql. Si se habilita MySQL sin especificar el directorio de instalacin de MySQL, PHP usar las bibliotecas de cliente de MySQL incorporadas. Los usuarios que ejecutan otras aplicaciones que usan MySQL (auth-mysql, por ejemplo) no deberan usar la biblioteca incorporada, en su lugar deben especificar la ruta al directorio de instalacin de MySQL, de este modo: --with-mysql=/ruta/hacia/mysql. Esto obligar a PHP a usar las bibliotecas de cliente instaladas por MySQL, para as evitar cualquier conflicto.

PHP 5+
El soporte para MySQL no se encuentra habilitado por defecto, ni lo est la biblioteca incorporada con PHP. Lea este FAQ para conocer los detalles del porqu. Use la opcin de configuracin --with-mysql[=DIR] para incluir el soporte para MySQL. Es posible descargar las cabeceras y bibliotecas desde MySQL.

Instalacin en Sistemas Windows


PHP 4
La extensin MySQL de PHP es compilada en PHP.

PHP 5+
El soporte para MySQL ya no es habilitado por defecto, as que el DLL php_mysql.dll DLL debe habilitarse al

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 2 de 51

interior de php.ini. Asimismo, PHP necesita acceder a la biblioteca de cliente MySQL. Un archivo de nombre libmysql.dll es incluido en la distribucin de PHP en Windows, y para que PHP se comunique con MySQL, este archivo necesita estar disponible en la ruta PATH de los sistemas Windows. Vea la entrada del FAQ titulada "Cmo agrego mi directorio PHP a la ruta PATH en Windows" para ms informacin sobre cmo hacerlo. Aunque copiar libmysql.dll al directorio de sistema de Windows tambin funciona (ya que el directorio de sistema es parte del PATH del sistema por defecto), tal accin no es recomendada. Al igual que ocurre con cualquier otra extensin (como php_mysql.dll), la directiva de PHP extension_dir debe definirse con el directorio en donde estn ubicadas las extensiones PHP. Vea tambin las Instrucciones de Instalacin Manual en Windows. Un valor de ejemplo de extension_dir para PHP 5 es c:\php\ext Nota: Si al iniciar el servidor web un error similar al siguiente ocurre: "Unable to load dynamic se debe a que php_mysql.dll o libmysql.dll no pueden encontrarse por el sistema.
library './php_mysql.dll'",

MySQL Installation Notes


Aviso Pueden encontrarse problemas de inicializacin y bloqueos de PHP cuando esta extensin es cargada en conjunto con la extensin recode. Consulte sobre la extensin recode para ms informacin. Nota: Si necesita juegos de caracteres diferentes a latin (el juego por defecto), tendr que instalar una biblioteca de mysql externa (no incorporada) que haya sido compilada con soporte para los juegos de caracteres.

Configuracin en tiempo de ejecucin


El comportamiento de estas funciones est afectado por los valores definidos en php.ini. Tabla 1. Opciones de Configuracin MySQL Por defecto mysql.allow_persistent "1" mysql.max_persistent "-1" mysql.max_links "-1" mysql.trace_mode "0" mysql.default_port NULL mysql.default_socket NULL mysql.default_host NULL mysql.default_user NULL mysql.default_password NULL Nombre Modificable Cambios

PHP_INI_SYSTEM PHP_INI_SYSTEM PHP_INI_SYSTEM PHP_INI_ALL Disponible desde PHP 4.3.0. PHP_INI_ALL PHP_INI_ALL Disponible desde PHP 4.0.1. PHP_INI_ALL PHP_INI_ALL PHP_INI_ALL PHP_INI_SYSTEM en PHP <= 4.3.2. Disponible mysql.connect_timeout "60" PHP_INI_ALL desde PHP 4.3.0. For further details and definitions of the PHP_INI_* constants, see the Apndice H. A continuacin se presenta una corta explicacin de las directivas de configuracin.
mysql.allow_persistent

boolean

Indica si se permiten conexiones persistentes con MySQL.


mysql.max_persistent

integer

El nmero mximo de conexiones persistentes con MySQL por proceso.

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Fu nciones MySQL

Pgina3 de 51

mysql.max_links

integer

El nmero mximo de conexiones con MySQL por proceso, inclu yendo conexiones persistentes.
mysql.trace_mode

boolean

Modo de ra streo. Cu a ndo se ha bilitamysql.trace_mode, se mu estra na dvertencia s pa ralaa pertu rade ta bla s/ndices, conju ntos de resu lta dos no libera dos, y errores SQL. (Se introdu jo en PHP 4.3.0)
mysql.default_port

string

El nmero de pu erto TCP predetermina do pa rau sa r cu a ndo se conectacon el servidor de ba ses de da tos, si no se indicaotro. Si no se indicau n va lor predetermina do, el pu erto se obtendr de lava ria ble de entorno MYSQL_TCP_PORT, laentra damysql-tcp en /etc/services o laconsta nte de tiempo de compila cin MYSQL_PORT, en ese orden. En Win32 slo se u salaconsta nte MYSQL_PORT.
mysql.default_socket

string

El nombre de socket predetermina do aser u sa do cu a ndo se rea licen conexiones con u n servidor de ba se de da tos loca l, si no se indicaa lgn otro.
mysql.default_host

string

Lamqu inaa nfitrionapredetermina daaser u sa dacu a ndo se rea licen conexiones con u n servidor de ba ses de da tos, si no se indicaotro va lor. No es a plica ble en SQL sa fe mode.
mysql.default_user

string

El nombre de u su a rio prodetermina do pa raconecta rse a l servidor de ba ses de da tos si no se indicaotro. No es a plica ble ba jo SQL sa fe mode.
mysql.default_password

string

Lacontra seapredetermina daau sa r cu a ndo se rea licen conexiones con el servidor de ba ses de da tos, si no se indicaotro va lor. No es a plica ble en SQL sa fe mode.
mysql.connect_timeout

integer

Tiempo de esperamximo de conexin, en segu ndos. Ba jo Linu x este tiempo de esperaes u sa do ta mbin cu a ndo se esperalaprimerarespu estadel servidor.

Tipos de recursos
Ha y dos tipos de recu rsos u sa dos en el mdu lo MySQL. El primero es el identifica dor de enla ce pa rau na conexin de ba se de da tos, el segu ndo es u n recu rso qu ea lma cenael resu lta do de u naconsu lta .

Constantes predefinidas
Esta s consta ntes estn definida s por estaextensin y esta rn disponibles sola mente cu a ndo laextensin hasido o bien compila dadentro de PHP o gra ba dadinmica mente en tiempo de ejecu cin. A pa rtir de PHP 4.3.0, es posible especifica r ba ndera s de cliente a diciona les pa rala s fu nciones mysql_connect() y mysql_pconnect(). La s sigu ientes consta ntes estn definida s: Tabla 2. Constantes de cliente MySQL Constante MYSQL_CLIENT_COMPRESS Descripcin Usa r protocolo de compresin

file:///C:/Users/Aleix/AppDa ta /Loca l/Temp/~hh9314.htm

03/09/2012

Funcio nes MySQL

Pgina 4 de 51

MYSQL_CLIENT_IGNORE_SPACE Permitir espacio s despus de no mbres de funcio nes Permitir tanto s segundo s de inactividad co moindique MYSQL_CLIENT_INTERACTIVE interactive_timeo ut (en lugar de wait_timeo ut) antes de cerrar la co nexin Usar encripcin SSL. Esta bandera se encuentra dispo nible nicamente co n la versin 4.x oms reciente de la biblio teca cliente de MySQL. La MYSQL_CLIENT_SSL versin 3.23.x se distribuye tantoco n PHP 4 co moco n lo s binario s de Windo ws de PHP 5. La funcin mysql_fetch_array() usa una co nstante para lo s diferentes tipo s de matrices de resultado . Las siguientes co nstantes estn definidas: Tabla 3. Constantes MySQL-fetch Constante Descripcin MYSQL_ASSOC Las co lumnas so n devueltas en la matriz usandoel no mbre del campoco mondice. Las co lumnas so n devueltas en la matriz teniendotantoun ndice numricoco moun ndice MYSQL_BOTH co rrespo ndiente al no mbre del campo . Las co lumnas so n devueltas en la matriz teniendoun ndice numricoa lo s campo s. Este MYSQL_NUM ndice co mienza en 0, el primer campodel resultado .

Notes
Nota: La mayo ra de funcio nes de MySQL aceptan identificador_enlace co moltimo parmetroo pcio nal. Si noes definido , se utiliza la ltima co nexin abierta. Si noexiste, se intenta establecer una co nexin co n lo s parmetro s predeterminado s definido s en php.ini. Si notiene xito , las funcio nes devuelven FALSE.

Ejemplos
Este sencilloejemplomuestra cmoco nectarse, ejecutar una co nsulta, imprimir las filas resultantes y desco nectarse de una base de dato s MySQL. Ejemplo 1. Ejemplo general de la extensin MySQL
<?php // Conexion, seleccion de base de datos $enlace = mysql_connect('host_mysql', 'usuario_mysql', 'contrasenya_mysql') or die('No pudo conectarse : ' . mysql_error()); echo 'Conexi&oacute;n exitosa'; mysql_select_db('mi_base_de_datos') or die('No pudo seleccionarse la BD.'); // Realizar una consulta SQL $consulta = 'SELECT * FROM mi_tabla'; $resultado = mysql_query($consulta) or die('La consulta fall&oacute;: ' . mysql_error()); // Impresion de resultados en HTML echo "<table>\n"; while ($linea = mysql_fetch_array($resultado, MYSQL_ASSOC)) { echo "\t<tr>\n"; foreach ($linea as $valor_col) { echo "\t\t<td>$valor_col</td>\n"; } echo "\t</tr>\n"; } echo "</table>\n"; // Liberar conjunto de resultados mysql_free_result($resultado); // Cerrar la conexion mysql_close($enlace);

file:///C:/Users/Aleix/AppData/Lo cal/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 5 de 51

?>

Tabla de contenidos mysql_affected_rows -- Devuelve el nmero de filas afectadas de la ltima operacin MySQL mysql_change_user -- Cambia el usuario conectado en la conexin activa mysql_client_encoding -- Devuelve el nombre del juego de caracteres mysql_close -- cierra el enlace con MySQL mysql_connect -- Abre una conexin a un servidor MySQL mysql_create_db -- Crea una base MySQL mysql_data_seek -- Mueve el puntero interno mysql_db_name -- Obtener datos de resultado mysql_db_query -- Envia una sentencia MySQL al servidor mysql_drop_db -- Borra una base de datos MySQL mysql_errno -- Deuelve el nmero del mensaje de error de la ltima operacin MySQL mysql_error -- Devuelve el texto del mensaje de error de la ltima operacin MySQL mysql_escape_string -- Escapa una cadena para su uso en mysql_query mysql_fetch_array -- Extrae la fila de resultado como una matriz asociativa, una matriz numrica o ambas mysql_fetch_assoc -- Recupera una fila de resultado como una matriz asociativa mysql_fetch_field -- Extrae la informacin de una columna y la devuelve como un objeto. mysql_fetch_lengths -- Devuelve la longitud de cada salida en un resultado mysql_fetch_object -- Extrae una fila de resultado como un objeto mysql_fetch_row -- Devuelve una fila de resultado como matriz mysql_field_flags -- Devuelve las banderas asociados con el campo especficado en un resultado mysql_field_len -- Devuelve la longitud del campo especficado mysql_field_name -- Devuelve el nombre del campo especficado en un resultado mysql_field_seek -- Asigna el puntero del resultado al offset del campo especficado mysql_field_table -- Devuelve el nombre de la tabla donde est el campo especficado mysql_field_type -- Devuelve el tipo del campo especficado en un resultado mysql_free_result -- Libera la memoria del resultado mysql_get_client_info -- Obtener informacin del cliente MySQL mysql_get_host_info -- Obtener informacin de la mquina anfitriona MySQL mysql_get_proto_info -- Obtener informacin del protocolo MySQL mysql_get_server_info -- Obtener informacin del servidor MySQL mysql_info -- Obtiene informacin sobre la consulta ms reciente mysql_insert_id -- Devuelve el identificador generado en la ltima llamada a INSERT mysql_list_dbs -- Lista las bases de datos disponibles en el servidor MySQL mysql_list_fields -- Lista los campos del resultado de MySQL mysql_list_processes -- Lista los procesos MySQL mysql_list_tables -- Lista las tablas en una base de datos MySQL mysql_num_fields -- devuelve el nmero de campos de un resultado mysql_num_rows -- Devuelve el nmero de filas de un resultado mysql_pconnect -- Abre una conexin persistente al servidor MySQL mysql_ping -- Efectuar un chequeo de respuesta (ping) sobre una conexin de servidor o reconectarse si no hay conexin mysql_query -- Enva una consulta de MySQL mysql_real_escape_string -- Escapa caracteres especiales de una cadena para su uso en una sentencia SQL mysql_result -- Devuelve datos de un resultado mysql_select_db -- Selecciona un base de datos MySQL mysql_stat -- Obtener el status actual del sistema mysql_tablename -- Devuelve el nombre de la tabla de un campo mysql_thread_id -- Devuelve el ID del hilo actual mysql_unbuffered_query -- Enva una consulta SQL a MySQL, sin recuperar ni colocar en bfer las filas de resultado

Anterior muscat_setup Anterior

Inicio Subir Manual de PHP

Siguiente mysql_affected_rows Siguiente

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 6 de 51

mysql_affected_rows
(PHP 3, PHP 4, PHP 5) mysql_affected_rows -- Devuelve el nmero de filas afectadas de la ltima operacin MySQL

Descripcin
int mysql_affected_rows ( [int identificador_de_enlace] ) mysql_affected_rows() devuelve el nmero de filas afectadas en la ultima sentencia INSERT, UPDATE o DELETE sobre el servidor asociado con el identificador_de_enlace especificado. Si el identificador de enlace no ha sido especificado, se asume por defecto el ltimo enlace. Nota: Si est usando transacciones, necesitar llamar mysql_affected_rows() despus del INSERT, UPDATE, o DELETE, no despus del commit. Si la ltima sentencia fue un DELETE sin clausula WHERE, todos los registros han sido borrados de la tabla pero esta funcin devolvera cero. Nota: Cuando se usa UPDATE, MySQL no actualizar las columnas donde el nuevo valor es el mismo al actual. Esto crea la posibilidad de que mysql_affected_rows() pueda no ser igual al nmero de filas encontradas, solo el nmero de filas que fueron literalmente afectadas por la sentencia. La sentencia REPLACE primero borra el registro con la misma llave principal y entonces inserta el nuevo registro. Esta funcin regresa el nmero de registros borrados ms el nmero de registros insertados. Para obtener el nmero de fils regresadas por un SELECT, es posible usar tambin mysql_num_rows(). Si la ltima consulta fall, esta funcin regresar -1. Ejemplo 1. Delete-Query
<?php /* connect to database */ $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_select_db('mydb'); /* this should return the correct numbers of deleted records */ mysql_query('DELETE FROM mytable WHERE id < 10'); printf("Records deleted: %d\n", mysql_affected_rows()); /* with a where clause that is never true, it should return 0 */ mysql_query('DELETE FROM mytable WHERE 0'); printf("Records deleted: %d\n", mysql_affected_rows()); ?>

El ejemplo anterior prducir la siguiente salida:


Records deleted: 10 Records deleted: 0

Ejemplo 2. Update-Query

<?php /* connect to database */ mysql_connect("localhost", "mysql_user", "mysql_password") or

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 7 de 51

die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); /* Update records */ mysql_query("UPDATE mytable SET used=1 WHERE id < 10"); printf ("Updated records: %d\n", mysql_affected_rows()); mysql_query("COMMIT"); ?>

El ejemplo anterior prducir la siguiente salida:


Updated Records: 10

Vea tambin mysql_num_rows(), mysql_info().

Anterior Funciones MySQL Anterior

Inicio Subir Manual de PHP

Siguiente mysql_change_user Siguiente

mysql_change_user
(PHP 3 >= 3.0.13) mysql_change_user -- Cambia el usuario conectado en la conexin activa

Descripcin
int mysql_change_user ( cadena usuario, cadena password [, cadena base_de_datos [, int identificador_de_enlace]] ) mysql_change_user() cambia el usuario conectado en la actual conexin activa, o si se especfica, en la conexin determinada por el identificador_de_enlace opcional. Si se especfica la base de datos, sta ser la base por defecto despus del cambio de usuario. Si la nueva combinacin de usuario/password no est autorizada, el usuario actualmente conectado permanece activo. Nota: Esta funcin es obsoleta y solo est disponible en PHP 3 y requiere MySQL 3.23.3 o superior.

Anterior mysql_affected_rows Anterior

Inicio Subir Manual de PHP

Siguiente mysql_client_encoding Siguiente

mysql_client_encoding
(PHP 4 >= 4.3.0, PHP 5) mysql_client_encoding -- Devuelve el nombre del juego de caracteres

Descripcin
string mysql_client_encoding ( [resource id_enlace] ) Recupera la variable character_set de MySQL.

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 8 de 51

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuelve el nombre del juego de caracteres predeterminado para la conexin actual.

Ejemplos
Ejemplo 1. Ejemplo de mysql_client_encoding()
<?php = mysql_connect('localhost', 'mysql_user', 'mysql_password'); $enlace $juego_cars = mysql_client_encoding($enlace); echo "El juego de caracteres actual es: $juego_cars\n"; ?>

El resultado del ejemplo seria algo similar a:


El juego de caracteres actual es: latin1

Ver tambin
mysql_real_escape_string()

Anterior mysql_change_user Anterior

Inicio Subir Manual de PHP

Siguiente mysql_close Siguiente

mysql_close
(PHP 3, PHP 4, PHP 5) mysql_close -- cierra el enlace con MySQL

Descripcin
int mysql_close ( [int identificador_de_enlace] ) Devuelve TRUE si todo se llev a cabo correctamente, FALSE en caso de fallo. mysql_close() cierra el enlace con la base MySQL que esta asociada con el identificador de enlace especficado. Si no se especfica el identificador de enlace, se asume por defecto el ltimo enlace. Nota: Normalmente no es necesario ya que la aperturas no-persistentes son cerradas automaticamente al final de la ejecucin del script. Vea tambi liberar recursos.

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 9 de 51

mysql_close() no cerrar los enlaces persistentes generados con mysql_pconnect(). Ejemplo 1. Ejemplo de MySQL close
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?>

Ver tambin: mysql_connect(), mysql_pconnect().

Anterior mysql_client_encoding Anterior

Inicio Subir Manual de PHP

Siguiente mysql_connect Siguiente

mysql_connect
(PHP 3, PHP 4, PHP 5) mysql_connect -- Abre una conexin a un servidor MySQL

Descripcin
int mysql_connect ( [cadena hostname [, cadena usuario [, cadena password [, bool new_link [, int client_flags]]]]] ) Devuelve: Un identificador de enlace positivo si tiene exito, o falso si error. mysql_connect()establece una conexin a un servidor MySQL. Todos los argumentos son opcionales, y si no hay, se asumen los valores por defecto ('localhost', usuario propietario del proceso del servidor, password vaco). El hostname puede incluir tambien un nmero de puerto . ej. "hostname:puerto" o un camino al socket ej. ":/camino/al/socket" para localhost. Nota: Siempre que especficque "localhost" o "localhost:port" como servidor, la libreria cliente de MySQL evitar esto y tratar de conectarse a socket local (nombrado pipe en Windows). Si quiere usar TCP/IP, use "127.0.0.1" en vez de "localhost". Si las librerias cliente de MySQL intentan conectarse a un socket local equivocado, debe fijar la trayectoria como mysql.default_host en el archivo de configuracin PHP y dejar el campo del servidor en blanco. Soporte para ":puerto" fue aadido en PHP 3.0B4. Soporte para ":/camino/al/socket" fue aadido en PHP 3.0.10. Puede suprimir el mensaje de error en caso de falla anteponiendo una @ al nombre de la funci n. Si se hace una segunda llamada a mysql_connect() con los mismos argumentos, no se abrir nuevo enlace, en lugar de eso, se regresa el identificador de enlace ya abierto. El parmetro new_link modifica este comportamiento y hace que mysql_connect() siempre abrir un nuevo enlace, an si mysql_connect() haba sido llamado antes con los mismos parmetros. El par client_flags puede ser una combinacin de las constantes: MYSQL_CLIENT_COMPRESS, MYSQL_CLIENT_IGNORE_SPACE o MYSQL_CLIENT_INTERACTIVE. Nota: El parmetro new_link estuvo disponible en PHP 4.2.0

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 10 de 51

El parmetro client_flags estuvo disponible en PHP 4.3.0 El enlace al servidor sera cerrado tan pronto como la ejecucin del script finalice, a menos que se cierre antes explcitamente llamando a mysql_close(). Ejemplo 1. Ejemplo de MySQL connect
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?>

Ver tambin : mysql_pconnect(), mysql_close().

Anterior mysql_close Anterior

Inicio Subir Manual de PHP

Siguiente mysql_create_db Siguiente

mysql_create_db
(PHP 3, PHP 4, PHP 5) mysql_create_db -- Crea una base MySQL

Descripcin
int mysql_create_db ( cadena base_de_datos [, int identificador_de_enlace] ) mysql_create_db() intenta crear una base nueva en el servidor asociado al identificador de enlace. Devuelve TRUE si todo se llev a cabo correctamente, FALSE en caso de fallo. Ejemplo 1. Ejemplo de MySQL create
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } if (mysql_create_db('my_db')) { echo "Database created successfully\n"; } else { echo 'Error creating database: ' . mysql_error() . "\n"; } ?>

Por razones de compatibilidad puede usarse mysql_createdb() igualmente. Nota: La funcin mysql_create_db() es obsoleta. Es preferible usar mysql_query() para ejecutar una sentencia SQL CREATE DATABASE en su lugar. Aviso

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 11 de 51

Esta funcin no ser disponible y la extensin de MySQL fue construida/compilada en una libreria de cliente de MySQL 4.X. Ver tambin: mysql_query().

Anterior mysql_connect Anterior

Inicio Subir Manual de PHP

Siguiente mysql_data_seek Siguiente

mysql_data_seek
(PHP 3, PHP 4, PHP 5) mysql_data_seek -- Mueve el puntero interno

Descripcin
int mysql_data_seek ( int id_resultado, int numero_de_fila ) mysql_data_seek() mueve el puntero de fila interno a la fila especficada para el identificador de resultado. La prxima llamada a mysql_fetch_ro w() devolver esa fila. Devuelve TRUE si todo se llev a cabo correctamente, FALSE en caso de fallo. empieza en . El numero_de_fila debe ser un valor dentro del rango de o a mysql_num_ro ws () - 1. Sin embargo si el resultado est vaco (mysql_num_ro ws() == 0), una bsqueda a 0 fallar con E_WARNING y mysql_data_seek() regresar FALSE.
numero_de_fila

No ta: La funcin mysql_data_seek() puede ser usada solo en conjunto con mysql_query(), no con mysql_unbuffered_query(). Ejemplo1. Ejemplode MySQL data seek
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } $db_selected = mysql_select_db('sample_db'); if (!$db_selected) { die('Could not select database: ' . mysql_error()); } $query = 'SELECT last_name, first_name FROM friends'; $result = mysql_query($query); if (!$result) { die('Query failed: ' . mysql_error()); } /* fetch rows in reverse order */ for ($i = mysql_num_rows($result) - 1; $i >= 0; $i--) { if (!mysql_data_seek($result, $i)) { echo "Cannot seek to row $i: " . mysql_error() . "\n"; continue; } if (!($row = mysql_fetch_assoc($result))) { continue; } echo $row['last_name'] . ' ' . $row['first_name'] . "<br />\n"; }

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 12 de 51

mysql_free_result($result); ?>

Vea tambin mysql_query(), mysql_num_rows(), mysql_fetch_row(), mysql_fetch_assoc(), mysql_fetch_array(), y mysql_fetch_object().

Anterior mysql_create_db Anterior

Inicio Subir Manual de PHP

Siguiente mysql_db_name Siguiente

mysql_db_name
(PHP 3 >= 3.0.6, PHP 4, PHP 5) mysql_db_name -- Obtener datos de resultado

Descripcin
string mysql_db_name ( resource resultado, int fila [, mixed campo] ) Recupera el nombre de la base de datos desde una llamada a mysql_list_dbs().

Lista de parmetros
resultado

El apuntador de resultado de una llamada a mysql_list_dbs().


fila

El ndice en el conjunto de resultados.


campo

El nombre del campo.

Valores retornados
Devuelve el nombre de la base de datos en caso de tener xito, y FALSE si ocurre un error. Si se devuelve FALSE, use mysql_error() para determinar la naturaleza del error.

Ejemplos
Ejemplo 1. Ejemplo de mysql_db_name()
<?php error_reporting(E_ALL); $enlace = mysql_connect('dbhost', 'nombre_usuario', 'contrasenya'); $lista_db = mysql_list_dbs($enlace); $i = 0; $cnt = mysql_num_rows($lista_db); while ($i < $cnt) { echo mysql_db_name($lista_db, $i) . "\n";

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 13 de 51

$i++; } ?>

Notes
Nota: For downward compatibility, the following deprecated alias may be used: mysql_dbname()

Ver tambin
mysql_list_dbs() mysql_tablename()

Anterior mysql_data_seek Anterior

Inicio Subir Manual de PHP

Siguiente mysql_db_query Siguiente

mysql_db_query
(PHP 3, PHP 4, PHP 5) mysql_db_query -- Envia una sentencia MySQL al servidor

Descripcin
int mysql_db_query ( cadena base_de_datos, cadena sentencia [, int identificador_de_enlace] ) Devuelve: Un identificador de resultado positivo o falso si error. La funcin tambin regresa TRUE/FALSE para las sentencias INSERT/UPDATE/DELETE para indicar exito/falla. mysql_db_query() selecciona una base y ejecuta una sentencia en ella. Si el identificador de enlace no ha sido especificado, la funcin intenta encontrar un enlace abierto al servidor MySQL y si no lo encuentra, intetar crear uno como si fuera llamado mysql_connect() sin argumentos Tenga en cuenta que esta funci NO se regresa a la base de datos a la que estaba conectado antes. En otras palabras usted no puede usar esta funcin para correr temporalmente una consulta SQL en otra base de datos, usted debe manualmente regresarse. Los usuarios son animados a usar la sintaxis database.table en las consultas SQL en vez de esta funcin. Ver tambinmysql_connect(), mysql_query(). Nota: Esta funcin es obsoleta desde PHP 4.0.6 no use esta funcin. Use mysql_select_db() y mysql_query().

Anterior mysql_db_name Anterior

Inicio Subir Manual de PHP

Siguiente mysql_drop_db Siguiente

mysql_drop_db
(PHP 3, PHP 4, PHP 5)

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 14 de 51

mysql_drop_db -- Borra una base de datos MySQL

Descripcin
int mysql_dro p_db ( cadena base_de_datos [, int identificador_de_enlace] ) mysql_dro p_db() intenta suprimir una base de datos completa del servidor asociado al identificador de enlace. Devuelve TRUE si todo se llev a cabo correctamente, FALSE en caso de fallo. Ver tambin: mysql_create_db(). Por razones de compatibilidad puede usarse mysql_dro pdb() igualmente. Aunque es obsoleta. No ta: La funcin mysql_dro p_db() es obsoleta. Es preferible usar mysql_query() para enviar una sentencia SQL DROP DATABASE en su lugar. Aviso Esta funcin no est disponible si la extensin de MySQL fue compilada para las librerias cliente de MySQL 4.x. Vea tambin mysql_query().

Anterior mysql_db_query Anterior

Inicio Subir Manual de PHP

Siguiente mysql_errno Siguiente

mysql_errno
(PHP 3, PHP 4, PHP 5) mysql_errno -- Deuelve el nmero del mensaje de error de la ltima operacin MySQL

Descripcin
int mysql_errno( [int identificador_de_enlace] ) Regresa el nmero de error de la ltima funcin, o 0 (cero) si no hay error. Los errores que se obtienen de la base de datos MySQL ya no generan alertas. En lugar de eso, use mysql_errno () para obtener el cdigo de error. Note que esta funcin solo regresa el cdigo de error de la funcin MySQLm s recientemente executada (sin incluir mysql_erro r() y mysql_errno ()), as que si quiere usarla, asegurese de chear el valor antes de llamar a otra funci de MySQL. Ejemplo1. Ejemplode mysql_errno
<?php $link = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!mysql_select_db("nonexistentdb", $link)) { echo mysql_errno($link) . ": " . mysql_error($link). "\n"; } mysql_select_db("kossu", $link); if (!mysql_query("SELECT * FROM nonexistenttable", $link)) { echo mysql_errno($link) . ": " . mysql_error($link) . "\n"; } ?>

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 15 de 51

El ejemplo anterior producir la siguiente salida:


1049: Unknown database 'nonexistentdb' 1146: Table 'kossu.nonexistenttable' doesn't exist

Nota: Si el parmetro opcional es especficado el identificador_de_enlace es usado para obtener el cdigo de error. Si no, se usa el ltimo enlace abierto. Ver tambin: mysql_error() y Cdigos de error MySQL.

Anterior mysql_drop_db Anterior

Inicio Subir Manual de PHP

Siguiente mysql_error Siguiente

mysql_error
(PHP 3, PHP 4, PHP 5) mysql_error -- Devuelve el texto del mensaje de error de la ltima operacin MySQL

Descripcin
cadena mysql_error ( [int identificador_de_enlace] ) Regresa el texto del error de la ltima funci MySQL o '' (cadena vaca) si no ocurri error. Si no se especfica el identificador de enlace en la funcin se usa el ltimo enlace abierto exitosamente para obtener el mensaje de error del servidor MySQL. Los errores que se obtienen de la base de datos MySQL ya no generan alertas. En lugar de eso, use mysql_errno () para obtener el cdigo de error. Note que esta funcin solo regresa el cdigo de error de la funcin MySQLm s recientemente executada (sin incluir mysql_error() y mysql_errno()), as que si quiere usarla, asegurese de chear el valor antes de llamar a otra funci de MySQL. Ejemplo 1. Ejemplo de mysql_error
<?php $link = mysql_connect("localhost", "mysql_user", "mysql_password"); mysql_select_db("nonexistentdb", $link); echo mysql_errno($link) . ": " . mysql_error($link). "\n"; mysql_select_db("kossu", $link); mysql_query("SELECT * FROM nonexistenttable", $link); echo mysql_errno($link) . ": " . mysql_error($link) . "\n"; ?>

El ejemplo anterior producir la siguiente salida:


1049: Unknown database 'nonexistentdb' 1146: Table 'kossu.nonexistenttable' doesn't exist

Ver tambin: mysql_errno() Cdigos de error MySQL.

Anterior mysql_errno

Inicio Subir

Siguiente mysql_escape_string

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 16 de 51

Manual de PHP Anterior Siguiente

mysql_escape_string
(PHP 4 >= 4.0.3, PHP 5) mysql_escape_string -- Escapa una cadena para su uso en mysql_query

Descripcin
string mysql_escape_string ( string cadena_no_escapada ) Esta funcin escapa la cadena_no_escapada, de modo que sea seguro usarla en un llamado a mysql_query(). Esta funcin es obsoleta. Esta funcin es idntica a mysql_real_escape_string() con la excepcin de que mysql_real_escape_string() recibe un gestor de conexin y escapa la cadena de acuerdo al juego de caracteres actual. mysql_escape_string() no recibe un argumento de conexin, y no hace caso al valor actual del juego de caracteres.

Lista de parmetro s
cadena_no_escapada

La cadena a ser escapada.

Valo res reto rnado s


Devuelve la cadena escapada.

Registrode cambio s
Versin 4.3.0 Descripcin Esta funcin se convirti en obsoleta, no use esta funcin. En su lugar, use mysql_real_escape_string().

Ejemplo s
Ejemplo1. Ejemplode mysql_escape_string()
<?php $item = "Zak's Laptop"; $item_escapado = mysql_escape_string($item); printf("La cadena escapada: %s\n", $item_escapado); ?>

El resultado del ejemplo seria:


La cadena escapada: Zak\'s Laptop

No tes
No ta: mysql_escape_string() no escapa % ni _.

Ver tambin

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 17 de 51

mysql_real_escape_string() addslashes() La directiva magic_quotes_gpc.

Anterior mysql_error Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_array Siguiente

mysql_fetch_array
(PHP 3, PHP 4, PHP 5) mysql_fetch_array -- Extrae la fila de resultado como una matriz asociativa, una matriz numrica o ambas

Descripcin
array mysql_fetch_array ( int id_resultado [, int tipo_de_resultado] ) Devuelve una matriz que corresponde a la sentencia extraida, o falso si no quedan ms filas. mysql_fetch_array() es una versin extendida de mysql_fetch_ro w(). Adems de guardar los datos en el ndice numrico de la matriz, guarda tambin los datos en los ndices asociativos, usando el nombre de campo como clave. Si dos o ms columnas del resultado tienen el mismo nombre de campo, la ltima columna toma la prioridad. Para acceder a la(s) otra(s) columna(s) con el mismo nombre, se debe escificar el indice numerico o definir un alias para la columna. En columnas con alias, usted no puede acceder al contenido con el nombre original de la columna (usando 'field' en este ejemplo) Ejemplo1. Co nsulta co n campo s repetido s usandoalias
SELECT table1.field AS foo, table2.field AS bar FROM table1, table2

La funcin mysql_fetch_array() no es significativemente mas lenta que mysql_fetch_ro w(), sin embargo tiene un valor aadido importante. El segundo argumento opcional tipo_de_resultado en mysql_fetch_array() es una constante y puede tomar los siguientes valores: MYSQL_ASSOC, MYSQL_NUM, y MYSQL_BOTH. Esta caraterstica fue agregada en PHP 3.0.7.
MYSQL_BOTH

Usando MYSQL_BOTH, usted obtendr una matrix con ndices asociativos y numricos. Usando MYSQL_ASSOC, usted solo tendr ndices asociativos (tal como funciona mysql_fetch_asso c()), usando MYSQL_NUM, solo obtendr los ndices numricos (tal como si fuera mysql_fetch_ro w()). No ta: Los nombres de campos retornados por esta funcin diferencian entre mayusculas y minusculas. No ta: Esta funcion define campos NULL como valores PHP NULL. Vea tambin mysql_fetch_ro w(), mysql_fetch_asso c(), mysql_data_seek(), y mysql_query(). Ejemplo2. mysql_fetch_array() co n MYSQL_NUM
<?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error());

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 18 de 51

mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_NUM)) { printf("ID: %s Name: %s", $row[0], $row[1]); } mysql_free_result($result); ?>

Ejemplo 3. mysql_fetch_array() con MYSQL_ASSOC


<?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { printf("ID: %s Name: %s", $row["id"], $row["name"]); } mysql_free_result($result); ?>

Ejemplo 4. mysql_fetch_array() con MYSQL_BOTH


<?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_BOTH)) { printf ("ID: %s Name: %s", $row[0], $row["name"]); } mysql_free_result($result); ?>

Anterior mysql_escape_string Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_assoc Siguiente

mysql_fetch_assoc
(PHP 4 >= 4.0.3, PHP 5) mysql_fetch_assoc -- Recupera una fila de resultado como una matriz asociativa

Descripcin
array mysql_fetch_assoc ( resource resultado ) Devuelve una matriz asociativa que corresponde a la fila recuperada y mueve el apuntador de datos interno hacia adelante. mysql_fetch_assoc() es equivalente a llamar mysql_fetch_array() con MYSQL_ASSOC como el segundo parmetro opcional. nicamente devuelve una matriz asociativa.

Lista de parmetros

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 19 de 51

result

The result resource that is being evaluated. This result comes from a call to mysql_query().

Valores retornados
Devuelve una matriz asociativa que corresponde a la fila recuperada, o FALSE si no hay ms filas disponibles. Si dos o ms columnas del resultado tienen los mismos nombres de campo, la ltima columna tomar precedencia. Para acceder a otras columnas con el mismo nombre, tendr que acceder al resultado con ndices numricos mediante el uso de mysql_fetch_row() o agregar sobrenombres. Vea el ejemplo en la descripcin de mysql_fetch_array() respecto a los sobrenombres.

Ejemplos
Ejemplo 1. Un ejemplo extendido de mysql_fetch_assoc()
<?php $conexion = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!$conexion) { echo "No pudo conectarse a la BD: " . mysql_error(); exit; } if (!mysql_select_db("nombre_de_la_bd")) { echo "No ha sido posible seleccionar la BD: " . mysql_error(); exit; } $sql = "SELECT id as id_usuario, nombre_completo, status_usuario FROM alguna_tabla WHERE status_usuario = 1"; $resultado = mysql_query($sql); if (!$resultado) { echo "No pudo ejecutarse satisfactoriamente la consulta ($sql) " . "en la BD: " . mysql_error(); exit; } if (mysql_num_rows($resultado) == 0) { echo "No se han encontrado filas, nada a imprimir, asi que voy " . "a detenerme."; exit; } // Mientras exista una fila de datos, colocar esa fila en $fila // como una matriz asociativa // Nota: Si solo espera una fila, no hay necesidad de usar un ciclo // Nota: Si coloca extract($fila); dentro del siguiente ciclo, // estara creando $id_usuario, $nombre_completo, y $status_usuario while ($fila = mysql_fetch_assoc($resultado)) { echo $fila["id_usuario"]; echo $fila["nombre_completo"]; echo $fila["status_usuario"]; } mysql_free_result($resultado); ?>

Notes
Rendimiento: Algo importante a notar es que el uso de mysql_fetch_assoc() no es

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina20 de 51

significativamente ms lento que el uso de mysql_fetch_row(), a l mismo tiempo que provee un va lor a grega do considera ble. Nota: Los nombres de ca mpos retorna dos por estafuncin diferencia n entre mayusculas y minusculas. Nota: Estafuncion define ca mpos NULL como va lores PHP NULL.

Ver tambin
mysql_fetch_row() mysql_fetch_array() mysql_data_seek() mysql_query() mysql_error()

Anterior mysql_fetch_a rra y Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_field Siguiente

mysql_fetch_field
(PHP 3, PHP 4, PHP 5) mysql_fetch_field -- Extra e lainforma cin de unacolumnay ladevuelve como un objeto.

Descripcin
objeto mysql_fetch_field ( int id_resulta do [, int sa lto] ) Devuelve un objeto que contiene lainforma cin del ca mpo. Puede usa rse mysql_fetch_field() pa raobtener informa cin sobre ca mpos en un resulta do. Si no se especficael sa lto, se extra e el siguiente ca mpo que toda vano hasido extra ido. con mysql_fetch_field(). La s propieda des del objeto son: na me - nombre de lacolumna ta ble - na me de lata blaalaque pertenece lacolumna ma x_length - longitud mximade lacolumna not_null - 1 si lacolumnano puede contener un va lor nulo prima ry_key - 1 si lacolumnaes cla ve prima ria unique_key - 1 si lacolumnaes cla ve nica multiple_key - 1 si lacolumnaes cla ve no nica numeric - 1 si lacolumnaes numrica blob - 1 si lacolumnaes un BLOB

file:///C:/Users/Aleix/AppDa ta /Loca l/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 21 de 51

type - el tipo de la columna unsigned - 1 si la columna es unsigned zerofill - 1 si la columna es zero-filled Ver tambin mysql_field_seek() Nota: Los nombres de campos retornados por esta funcin diferencian entre mayusculas y minusculas. Ejemplo 1. Ejemplo mysql_fetch_field
<?php $conn = mysql_connect('localhost:3306', 'user', 'password'); if (!$conn) { die('Could not connect: ' . mysql_error()); } mysql_select_db('database'); $result = mysql_query('select * from table'); if (!$result) { die('Query failed: ' . mysql_error()); } /* get column metadata */ $i = 0; while ($i < mysql_num_fields($result)) { echo "Information for column $i:<br />\n"; $meta = mysql_fetch_field($result, $i); if (!$meta) { echo "No information available<br />\n"; } echo "<pre> blob: $meta->blob max_length: $meta->max_length multiple_key: $meta->multiple_key name: $meta->name not_null: $meta->not_null numeric: $meta->numeric primary_key: $meta->primary_key table: $meta->table type: $meta->type unique_key: $meta->unique_key unsigned: $meta->unsigned zerofill: $meta->zerofill </pre>"; $i++; } mysql_free_result($result); ?>

Anterior mysql_fetch_assoc Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_lengths Siguiente

mysql_fetch_lengths
(PHP 3, PHP 4, PHP 5) mysql_fetch_lengths -- Devuelve la longitud de cada salida en un resultado

Descripcin

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 22 de 51

array mysql_fetch_lengths ( int id_resultado ) Devuelve: Una matriz que contiene las longitudes de cada campo de la ltima fila extraida por mysql_fetch_row (), o FALSE si error. mysql_fetch_lengths() almacena las longitudes de cada columna en la ltima fila devuelta por mysql_fetch_row(), mysql_fetch_assoc(), mysql_fetch_array(), y mysql_fetch_object() en una matriz, empezando por 0. Vea tambin mysql_field_len(), mysql_fetch_row(), strlen(). Ejemplo 1. Ejemplo de mysql_fetch_lengths
<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } $row = mysql_fetch_assoc($result); $lengths = mysql_fetch_lengths($result); print_r($row); print_r($lengths); ?>

El resultado del ejemplo seria algo similar a:


Array ( [id] => 42 [email] => user@example.com ) Array ( [0] => 2 [1] => 16 )

Anterior mysql_fetch_field Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_object Siguiente

mysql_fetch_object
(PHP 3, PHP 4, PHP 5) mysql_fetch_object -- Extrae una fila de resultado como un objeto

Descripcin
objeto mysql_fetch_object ( int id_resultado ) Devuelve un objeto con las propiedades que corresponden a la ltima fila extraida, o FALSE si no quedan ms filas. mysql_fetch_object() es similar a mysql_fetch_array(), con la diferencia que un objeto es devuelto en lugar de una matriz. Indirectamente, quiere decir que solo se puede aceder a los datos por el nombre del campo, y no por

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 23 de 51

su posicin. (los nmeros no pueden ser nombres de propiedades de objetos). Nota: Los nombres de campos retornados por esta funcin diferencian entre mayusculas y minusculas. Nota: Esta funcion define campos NULL como valores PHP NULL. Ejemplo 1. Ejemplo demysql_fetch_object()
<?php $row = mysql_fetch_object($result); /* this is valid */ echo $row->field; /* this is invalid */ //echo $row->0; ?>

La funcin es identica a mysql_fetch_array(), y casi tan rpida como mysql_fetch_row() (la diferencia es insignificante). Ejemplo 2. Ejemplo demysql_fetch_object()
<?php mysql_connect("hostname", "user", "password"); mysql_select_db("mydb"); $result = mysql_query("select * from mytable"); while ($row = mysql_fetch_object($result)) { echo $row->user_id; echo $row->fullname; } mysql_free_result($result); ?>

Ver tambin: mysql_fetch_array(), mysql_fetch_assoc(), mysql_fetch_row(), mysql_data_seek() y mysql_query().

Anterior mysql_fetch_lengths Anterior

Inicio Subir Manual de PHP

Siguiente mysql_fetch_row Siguiente

mysql_fetch_row
(PHP 3, PHP 4, PHP 5) mysql_fetch_row -- Devuelve una fila de resultado como matriz

Descripcin
array mysql_fetch_row ( int id_resultado ) Devuelve: Una matriz que corresponde a la fila selecionada, o FALSE si no quedan ms filas. Nota: Esta funcion define campos NULL como valores PHP NULL. mysql_fetch_row() seleciona una fila de datos del resultado asociado al identificador de resultado especificado. La fila es devuelta como una matriz. Cada columna del resultdo es guardada en un offset de la matriz,

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 24 de 51

empezando por el offset 0. La llamada a mysql_fetch_row() debera devolver la prxima fila del resultado, o FALSE si no quedan ms filas. Ejemplo 1. Ejemplo de mysql_fetch_row
<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } $row = mysql_fetch_row($result); echo $row[0]; // 42 echo $row[1]; // the email value ?>

Ver tambin: mysql_fetch_array(), mysql_fetch_object(), mysql_data_seek(), mysql_fetch_lengths(), mysql_result().

Anterior mysql_fetch_object Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_flags Siguiente

mysql_field_flags
(PHP 3, PHP 4, PHP 5) mysql_field_flags -- Devuelve las banderas asociados con el campo especficado en un resultado

Descripcin
cadena mysql_field_flags ( int id_resultado, int offset_del_campo ) mysql_field_flags() devuelve las banderas del campo especficado. Cada bandera es devuelta como una palabra y estn separados por un nico espacio, se puede dividir el resultado devuelto utilizando explode(). Soporta las siguientes banderas: "not_null", "primary_key", "unique_key", "multiple_key", "blob", "unsigned", "zerofill", "binary", "enum", "auto_increment" y "timestamp". Ejemplo 1. Ejemplo de mysql_field_flags
<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } $flags = mysql_field_flags($result, 0); echo $flags; print_r(explode(' ', $flags)); ?>

El resultado del ejemplo seria algo similar a:


not_null primary_key auto_increment

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 25 de 51

Array ( [0] => not_null [1] => primary_key [2] => auto_increment )

Por razones de compatibilidad puede usarse tambin mysql_fieldflags(). Sin embargo esta funci es obsoleta.

Anterior mysql_fetch_row Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_len Siguiente

mysql_field_len
(PHP 3, PHP 4, PHP 5) mysql_field_len -- Devuelve la longitud del campo especficado

Descripcin
int mysql_field_len ( int id_resultado, int offset_del_campo ) mysql_field_len() devuelve la longitud del campo especficado. Ejemplo1. Ejemplode mysql_fetch_len
<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } // Will get the length of the value in email so for example // user@example.com would give us a length of 16 $length = mysql_field_len($result, 'email'); echo $length; ?>

Por razones de compatibilidad puede usarse tambin mysql_fieldlen(). Aunque esta funcin es obsoleta. Vea tambi mysql_fetch_lengths(), strlen().

Anterior mysql_field_flags Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_name Siguiente

mysql_field_name
(PHP 3, PHP 4, PHP 5) mysql_field_name -- Devuelve el nombre del campo especficado en un resultado

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 26 de 51

Descripcin
cadena mysql_field_name ( int id_resultado, int indice_del_campo ) mysql_field_name() devuelve el nombre del campo especficado. Los argumentos de la funcin son el identificador de resultado y el ndice del campo. No ta: indice_del_campo comienza en 0. Por ejemplo el ndice del tercer campo ser en realidad 2, el ndice del cuarto campo ser 3 y asi sucesivamente. No ta: Los nombres de campos retornados por esta funcin diferencian entre mayusculas y minusculas. Ejemplo1. Ejemplomysql_field_name
<?php /* The users table consists of three fields: * user_id * username * password. */ $link = @mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect to MySQL server: ' . mysql_error()); } $dbname = 'mydb'; $db_selected = mysql_select_db($dbname, $link); if (!$db_selected) { die('Could not set $dbname: ' . mysql_error()); } $res = mysql_query('select * from users', $link); echo mysql_field_name($res, 0) . "\n"; echo mysql_field_name($res, 2); ?>

El ejemplo anterior producir la siguiente salida:


user_id password

Por razones de compatibilidad puede usarse tambin mysql_fieldname(). Sin embargo esta funcin es obsoleta.

Anterior mysql_field_len Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_seek Siguiente

mysql_field_seek
(PHP 3, PHP 4, PHP 5) mysql_field_seek -- Asigna el puntero del resultado al offset del campo especficado

Descripcin
int mysql_field_seek ( int id_resultado, int offset_del_campo )

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 27 de 51

Busca el offset del campo especficado. Si la prxima llamada a mysql_fetch_field() no incluye un offset de campo, se devolver ese campo. Ver tambin mysql_fetch_field().

Anterior mysql_field_name Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_table Siguiente

mysql_field_table
(PHP 3, PHP 4, PHP 5) mysql_field_table -- Devuelve el nombre de la tabla donde est el campo especficado

Descripcin
cadena mysql_field_table ( int id_resultado, int offset_del_campo ) Devuelve el nombre de la tabla donde est el campo. Ejemplo1. Ejemplomysql_field_table
<?php $result = mysql_query("SELECT name,comment FROM people,comments"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } // Assuming name is in the people table $table = mysql_field_table($result, 'name'); echo $table; // people ?>

Por razones de compatibilidad puede usarse tambin mysql_fieldtable(). Sin embargo esta funcin es obsoleta. Vea tambin mysql_list_tables().

Anterior mysql_field_seek Anterior

Inicio Subir Manual de PHP

Siguiente mysql_field_type Siguiente

mysql_field_type
(PHP 3, PHP 4, PHP 5) mysql_field_type -- Devuelve el tipo del campo especficado en un resultado

Descripcin
cadena mysql_field_type ( int id_resultado, int offset_del_campo )

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funcio nes MySQL

Pgina 28 de 51

mysql_field_type() es similar a la funcin mysql_field_name(). Lo s argumento s so n idntico s, perose devuelve el tipode campo . El tiposer "int", "real", "string", "blob", u o tro s detallado s en la do cumentacin de MySQL. Ejemplo 1. mysql_field_type() example
<?php mysql_connect("localhost", "mysql_username", "mysql_password"); mysql_select_db("mysql"); $result = mysql_query("SELECT * FROM func"); $fields = mysql_num_fields($result); $rows = mysql_num_rows($result); $table = mysql_field_table($result, 0); echo "Your '" . $table . "' table has " . $fields . " fields and " . $rows . " record(s) \n"; echo "The table has the following fields:\n"; for ($i=0; $i < $fields; $i++) { $type = mysql_field_type($result, $i); $name = mysql_field_name($result, $i); $len = mysql_field_len($result, $i); $flags = mysql_field_flags($result, $i); echo $type . " " . $name . " " . $len . " " . $flags . "\n"; } mysql_free_result($result); mysql_close(); ?>

El ejemploanterio r pro ducir la siguiente salida:


Your 'func' table has 4 fields and 1 record(s) The table has the following fields: string name 64 not_null primary_key binary int ret 1 not_null string dl 128 not_null string type 9 not_null enum

Po r razo nes de co mpatibilidad puede usarse tambin mysql_fieldtype(). Aunque esta funcin es o bso leta.

Anterio r mysql_field_table Anterio r

Inicio Subir Manual de PHP

Siguiente mysql_free_result Siguiente

mysql_free_result
(PHP 3, PHP 4, PHP 5) mysql_free_result -- Libera la memo ria del resultado

Descripcin
int mysql_free_result ( int id_resultado) mysql_free_result() so lonecesita ser llamada si te preo cupa usar demasiadomemo ria durante la ejecucin de tu script. To da la memo ria usada po r resultadoespecficadoen el parmetrodel identificado r de resultadoser auto mticamente liberada. Devuelve TRUE si to dose llev a caboco rrectamente, FALSE en casode fallo . If a no n-reso urce is used fo r the result, an erro ro f level E_WARNING will be emitted. It's wo rth no ting that

file:///C:/Users/Aleix/AppData/Lo cal/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 29 de 51

mysql_query() only returns a resource for SELECT, SHOW, EXPLAIN, and DESCRIBE queries. Ejemplo 1. Ejemplo de mysql_free_result
<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } /* Use the result, assuming we're done with it afterwords */ $row = mysql_fetch_assoc($result); /* Now we free up the result and continue on with our script */ mysql_free_result($result); echo $row['id']; echo $row['email']; ?>

Por razones de compatibilidad puede usarse tambien mysql_freeresult(). Sin embargo esta funcin es obsoleta. Vea tambin mysql_query(), is_resource().

Anterior mysql_field_type Anterior

Inicio Subir Manual de PHP

Siguiente mysql_get_client_info Siguiente

mysql_get_client_info
(PHP 4 >= 4.0.5, PHP 5) mysql_get_client_info -- Obtener informacin del cliente MySQL

Descripcin
string mysql_get_client_info ( void ) mysql_get_client_info() devuelve una cadena que representa la versin de la biblioteca cliente.

Valores retornados
La versin del cliente MySQL.

Ejemplos
Ejemplo 1. Ejemplo de mysql_get_client_info()
<?php printf("Informaci&oacute;n del cliente MySQL: %s\n", mysql_get_client_info()); ?>

El resultado del ejemplo seria algo similar a:


Informaci&oacute;n del cliente MySQL: 3.23.39

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 30 de 51

Ver tambin
mysql_get_host_info() mysql_get_proto_info() mysql_get_server_info()

Anterior mysql_free_result Anterior

Inicio Subir Manual de PHP

Siguiente mysql_get_host_info Siguiente

mysql_get_host_info
(PHP 4 >= 4.0.5, PHP 5) mysql_get_host_info -- Obtener informacin de la mquina anfitriona MySQL

Descripcin
string mysql_get_host_info ( [resource id_enlace] ) Describe el tipo de conexin en uso, incluyendo el nombre del equipo servidor anfitrin.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuelve una cadena que describe el tipo de conexin MySQL en uso, o FALSE si ocurre un error.

Ejemplos
Ejemplo 1. Ejemplo de mysql_get_host_info()
<?php $enlace = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!$enlace) { die("No pudo conectarse: " . mysql_error()); } printf("Informaci&oacute;n del host MySQL: %s\n", mysql_get_host_info()); ?>

El resultado del ejemplo seria algo similar a:


Informaci&oacute;n del equipo anfitri&oacute;n MySQL: Localhost via UNIX socket

Ver tambin
mysql_get_client_info()

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 31 de 51

mysql_get_proto_info() mysql_get_server_info()

Anterior mysql_get_client_info Anterior

Inicio Subir Manual de PHP

Siguiente mysql_get_proto_info Siguiente

mysql_get_proto_info
(PHP 4 >= 4.0.5, PHP 5) mysql_get_proto_info -- Obtener informacin del protocolo MySQL

Descripcin
int mysql_get_proto_info ( [resource id_enlace] ) Recupera el protocolo MySQL.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuelve el protocolo MySQL en caso de xito, o FALSE si ocurre un error.

Ejemplos
Ejemplo 1. Ejemplo de mysql_get_proto_info()
<?php $enlace = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!$enlace) { die("No pudo conectarse: " . mysql_error()); } printf("Versi&oacute;n del protocolo MySQL: %s\n", mysql_get_proto_info()); ?>

El resultado del ejemplo seria algo similar a:


Versi&oacute;n del protocolo MySQL: 10

Ver tambin
mysql_get_client_info() mysql_get_host_info() mysql_get_server_info()

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 32 de 51

Anterior mysql_get_host_info Anterior

Inicio Subir Manual de PHP

Siguiente mysql_get_server_info Siguiente

mysql_get_server_info
(PHP 4 >= 4.0.5, PHP 5) mysql_get_server_info -- Obtener informacin del servidor MySQL

Descripcin
string mysql_get_server_info ( [resource id_enlace] ) Recupera la versin del servidor MySQL.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuelve la versin del servidor MySQL en caso de xito, o FALSE si ocurre un error.

Ejemplos
Ejemplo 1. Ejemplo de mysql_get_server_info()
<?php $enlace = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!$enlace) { die("No pudo conectarse: " . mysql_error()); } printf("Versi&oacute;n del servidor MySQL: %s\n", mysql_get_server_info()); ?>

El resultado del ejemplo seria algo similar a:


Versi&oacute;n del servidor MySQL: 4.0.1-alpha

Ver tambin
mysql_get_client_info() mysql_get_host_info() mysql_get_proto_info() phpversion()

Anterior

Inicio

Siguiente

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 33 de 51

mysql_get_proto_info Anterior

Subir Manual de PHP

mysql_info Siguiente

mysql_info
(PHP 4 >= 4.3.0, PHP 5) mysql_info -- Obtiene informacin sobre la consulta ms reciente

Descripcin
string mysql_info ( [resource id_enlace] ) Devuelve informacin detallada sobre la ltima consulta.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuele informacin sobre la sentencia en caso de xito, o FALSE si ocurre un error. Vea el ejemplo siguiente para conocer cules sentencias proveen informacin, y cul puede ser la apariencia del valor devuelto. Las sentencias que no son listadas devolvern FALSE.

Ejemplos
Ejemplo 1. Sentencias MySQL Relevantes Sentencias que devuelven valores tipo cadena. Los nmeros se encuentran nicamente para propsitos ilustrativos; sus valores correspondern con la consulta.
INSERT INTO ... SELECT ... String format: Records: 23 Duplicates: 0 Warnings: 0 INSERT INTO ... VALUES (...),(...),(...)... String format: Records: 37 Duplicates: 0 Warnings: 0 LOAD DATA INFILE ... String format: Records: 42 Deleted: 0 Skipped: 0 Warnings: 0 ALTER TABLE String format: Records: 60 Duplicates: 0 Warnings: 0 UPDATE String format: Rows matched: 65 Changed: 65 Warnings: 0

Notes
Nota: mysql_info() devuelve un valor diferente a FALSE para la sentencia INSERT ... VALUES slo si se indican mltiples listas de valores en la sentencia.

Ver tambin
mysql_affected_rows() mysql_insert_id()

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 34 de 51

mysql_stat()

Anterior mysql_get_server_info Anterior

Inicio Subir Manual de PHP

Siguiente mysql_insert_id Siguiente

mysql_insert_id
(PHP 3, PHP 4, PHP 5) mysql_insert_id -- Devuelve el identificador generado en la ltima llamada a INSERT

Descripcin
int mysql_insert_id ( [int identificador_de_enlace] ) mysql_insert_id() devuelve el identificador generado para un campo de tipo AUTO_INCREMENTED. Se devolver el identificador generado por el ltimo INSERT para el identificador_de_enlace. Si no se especfica el identificador_de_enlace, se asume por defecto el ltimo enlace abierto. mysql_insert_id() regresa 0 si la consulta previa no gener un valor AUTO_INCREMENT. Si necesita guardar el valor para un uso posterior, asegurese de llamar mysql_insert_id() inmediatamente despus de la consulta que gener el valor. No ta: El valor de la funcin SQL de MYSQL LAST_INSERT_ID() siempre contiene el valor AUTO_INCREMENT m recientemente generado, y no se pierde su valor entre consultas. Aviso mysql_insert_id() convierte el tipo de la funcin nativa de MySQL en el API de C mysql_insert_id() a un tipo de long (llamada int en PHP). Si tu columna AUTO_INCREMENT tiene un tipo BIGINT, el valor regresado por mysql_insert_id() ser incorrecto. En ese caso, usa la funcin interna LAST_INSERT_ID() de SQL en MySQL en una consulta SQL. Ejemplo1. Ejemplomysql_insert_id
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_select_db('mydb'); mysql_query("INSERT INTO mytable (product) values ('kossu')"); printf("Last inserted record has id %d\n", mysql_insert_id()); ?>

Vea tambin mysql_query(), mysql_info ().

Anterior mysql_info Anterior

Inicio Subir Manual de PHP

Siguiente mysql_list_dbs Siguiente

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 35 de 51

mysql_list_dbs
(PHP 3, PHP 4, PHP 5) mysql_list_dbs -- Lista las bases de datos disponibles en el servidor MySQL

Descripcin
int mysql_list_dbs ( [int identificador_de_enlace] ) mysql_list_dbs() devuelve un puntero de resultado que contiene las bases disponibles en el actual demonio mysql. Utiliza la funcin mysql_tablename() para explotar el puntero de resultado. Ejemplo1. Ejemplomysql_list_dbs
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); $db_list = mysql_list_dbs($link); while ($row = mysql_fetch_object($db_list)) { echo $row->Database . "\n"; } ?>

El ejemplo anterior producir la siguiente salida:


database1 database2 database3 ...

w() u otra funci similar. No ta: El cdigo anterior puede funcionar igualmente con mysql_fetch_ro Por razones de compatibilidad puede usarse tambin mysql_listdbs(). Sin embargo esta funcin es obsoleta. Vea tambin mysql_db_name(), mysql_select_db().

Anterior mysql_insert_id Anterior

Inicio Subir Manual de PHP

Siguiente mysql_list_fields Siguiente

mysql_list_fields
(PHP 3, PHP 4, PHP 5) mysql_list_fields -- Lista los campos del resultado de MySQL

Descripcin
int mysql_list_fields ( cadena base_de_datos, cadena tabla [, int dentificador_de_enlace] ) No ta: La funcin mysql_list_fields() es onsoleta. Es preferible usar mysql_query() para ejecutar una sentencia SQL SHOW COLUMNS FROM table [LIKE 'name']. mysql_list_fields() lista informacin sobre la tabla. Los argumentos son la base de datos y el nombre de la tabla. Se devuelve un puntero que puede ser usado por las funciones mysql_field_flags(), mysql_field_len(),

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 36 de 51

mysql_field_name(), y mysql_field_type(). Un identificador de resultado es un entero positivo. La funcin devuelve -1 si se produce un error. Una cadena de caracteres describiendo el error ser introducida en $phperrmsg, y a menos que la funcin sea llamada como @mysql() el literal del error tambin ser desplegado. Ejemplo 1. Ejemplo alternativo a mysql_list_fields
<?php $result = mysql_query("SHOW COLUMNS FROM sometable"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } if (mysql_num_rows($result) > 0) { while ($row = mysql_fetch_assoc($result)) { print_r($row); } ?>

El ejemplo anterior producir una salida similar a:


Array ( [Field] => id [Type] => int(7) [Null] => [Key] => PRI [Default] => [Extra] => auto_increment ) Array ( [Field] => email [Type] => varchar(100) [Null] => [Key] => [Default] => [Extra] => )

Por razones de compatibilidad puede usarse tambin mysql_listfields(). Sin embargo esta funci es obsoleta. Vea tambin mysql_field_flags(), mysql_info().

Anterior mysql_list_dbs Anterior

Inicio Subir Manual de PHP

Siguiente mysql_list_processes Siguiente

mysql_list_processes
(PHP 4 >= 4.3.0, PHP 5) mysql_list_processes -- Lista los procesos MySQL

Descripcin
resource mysql_list_processes ( [resource id_enlace] )

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 37 de 51

Recupera los hilos del servidor MySQL actuales.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Un apuntador tipo resource de resultado en caso de tener xito, o FALSE si ocurre un error.

Ejemplos
Ejemplo 1. Ejemplo de mysql_list_processes()
<?php $enlace = mysql_connect('localhost', 'mysql_user', 'mysql_password'); $resultado = mysql_list_processes($enlace); while ($fila = mysql_fetch_assoc($resultado)){ printf("%s %s %s %s %s\n", $fila["Id"], $fila["Host"], $fila["db"], $fila["Command"], $fila["Time"]); } mysql_free_result($resultado); ?>

El resultado del ejemplo seria algo similar a:


1 localhost test Processlist 0 4 localhost mysql sleep 5

Ver tambin
mysql_thread_id() mysql_stat()

Anterior mysql_list_fields Anterior

Inicio Subir Manual de PHP

Siguiente mysql_list_tables Siguiente

mysql_list_tables
(PHP 3, PHP 4, PHP 5) mysql_list_tables -- Lista las tablas en una base de datos MySQL

Descripcin
int mysql_list_tables ( cadena base_de_datos [, int identificador_de_enlace] ) mysql_list_tables() toma el nombre de la base y devuelve un puntero de resultado como la funcin

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funcio nes MySQL

Pgina 38 de 51

mysql_db_query(). La funcin mysql_tablename() debe ser usada para extraer lo s no mbres de las tablas del puntero . El parmetrobase_de_datos es el no mbre de la base de dato s de la cual se debe extraer la lista de la tabla, a meno s que o curra un erro r mysql_list_tables() regresa FALSE Po r razo nes de co mpatibilidad puede usarse tambin mysql_listtables(). Esta funcin es o bso leta y nose reco mienda. Nota: La funcin mysql_list_tables() es o bso leta. Es preferible usar mysql_query() para enviar una sentencia SQL SHOW TABLES [FROM db_name] [LIKE 'pattern']. Ejemplo 1. Ejemplo mysql_list_tables
<?php $dbname = 'mysql_dbname'; if (!mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) { echo 'Could not connect to mysql'; exit; } $result = mysql_list_tables($dbname); if (!$result) { echo "DB Error, could not list tables\n"; echo 'MySQL Error: ' . mysql_error(); exit; } while ($row = mysql_fetch_row($result)) { echo "Table: $row[0]\n"; } mysql_free_result($result); ?>

Vea tambin: mysql_list_dbs(), mysql_tablename().

Anterio r mysql_list_pro cesses Anterio r

Inicio Subir Manual de PHP

Siguiente mysql_num_fields Siguiente

mysql_num_fields
(PHP 3, PHP 4, PHP 5) mysql_num_fields -- devuelve el nmerode campo s de un resultado

Descripcin
int mysql_num_fields ( int id_resultado) mysql_num_fields() devuelve el nmerode campo s de un identificado r de resultado . Ver tambin: mysql_db_query(), mysql_query(), mysql_fetch_field(), mysql_num_rows(). Ejemplo 1. Ejemplo de mysql_num_fields()

file:///C:/Users/Aleix/AppData/Lo cal/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 39 de 51

<?php $result = mysql_query("SELECT id,email FROM people WHERE id = '42'"); if (!$result) { echo 'Could not run query: ' . mysql_error(); exit; } /* returns 2 because id,email === two fields */ echo mysql_num_fields($result); ?>

Por razones de compatibilidad puede usarse tambin mysql_numfields(). Sin embargo esta funcin es obsoleta.

Anterior mysql_list_tables Anterior

Inicio Subir Manual de PHP

Siguiente mysql_num_rows Siguiente

mysql_num_rows
(PHP 3, PHP 4, PHP 5) mysql_num_rows -- Devuelve el nmero de filas de un resultado

Descripcin
int mysql_num_rows ( int id_resultado ) mysql_num_rows() regresa el nmero de filas en un resultado. Este comando es valido solo para las sentencias SELECT. Para obtener el nmero de filas afectadas por las sentencias INSERT, UPDATE o DELETE, use mysql_affected_rows(). Ejemplo 1. Ejemplo mysql_num_rows
<?php $link = mysql_connect("localhost", "mysql_user", "mysql_password"); mysql_select_db("database", $link); $result = mysql_query("SELECT * FROM table1", $link); $num_rows = mysql_num_rows($result); echo "$num_rows Rows\n"; ?>

Nota: Si usa mysql_unbuffered_query(), mysql_num_rows() no regresar el valor correcto hasta que todas las filas en el resultado hayan sido recuperadas. Ver tambin: mysql_affected_rows(), mysql_connect(), mysql_data_seek(), mysql_select_db(), mysql_query (). Por razones de compatibilidad puede usarse tambin mysql_numrows(). Sin embargo esta fucnin

Anterior mysql_num_fields Anterior

Inicio Subir Manual de PHP

Siguiente mysql_pconnect Siguiente

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 40 de 51

mysql_pconnect
(PHP 3, PHP 4, PHP 5) mysql_pconnect -- Abre una conexin persistente al servidor MySQL

Descripcin
int mysql_pconnect ( [cadena hostname [, cadena usuario [, cadena password]]] ) Devuelve: un identificador de enlace persistente, o FALSE si se produce un error. mysql_pconnect() establece una conexin a un servidor MySQL. Todos los argumentos son opcionales, y si no existen, se asumen los valores por defecto ('localhost', nombre del usuario propietario del proceso, password vacia). El hostname puede incluir un nmero de puerto. ej. "hostname:port" o un camino al socket ej. ":/camino/al/socket" para el puerto para el host local. Nota: Soporte para ":puerto" fue aadido en 3.0B4. Soporte para ":/camino/al/socket" fue aadido en 3.0.10. mysql_pconnect() actua como mysql_connect() con dos diferencias fundamentales. Primero, durante la conexin, la funcin intenta primero encontrar un enlace persistente abierto con el mismo host, usuario y password. Si lo encuentra, devuelve el identificador de enlace en lugar de abrir otra conexin. Segundo, la conexin no ser cerrada cuando acabe la ejecucin del script. El enlace permanecer abierta para ser usado en el futuro (mysql_close() no cierra el enlace establecido con mysql_pconnect()). El parmetro opcional client_flags est disponible en PHP 4.3.0. Este tipo de enlaces son llamados 'persistentes'. Nota: Note que ese tipo de enlaces solo funcionan si est usando un versin de PHP como mdulo. Vea la secci?n Conexiones Persistentes a base de datos para ms informacin. Aviso Usando conexiones persistentes puede requerir un poco de ajustar sus configuraciones de Apache y MySQL para asegurarse de que no excede el nmero de conexiones permitidas por MySQL. Anterior mysql_num_rows Anterior Inicio Subir Manual de PHP Siguiente mysql_ping Siguiente

mysql_ping
(PHP 4 >= 4.3.0, PHP 5) mysql_ping -- Efectuar un chequeo de respuesta (ping) sobre una conexin de servidor o reconectarse si no hay conexin

Descripcin

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 41 de 51

bool mysql_ping ( [resource id_enlace] ) Qhequea si est activa o no la conexin con el servidor. Si sta se ha cado, una reconexin automtica es intentada. Esta funcin puede ser usada por scripts que permanecen pasivos durante largos espacios de tiempo, para chequear si el servidor ha cerrado la conexin, y reconectarse de ser necesario.

Lista de parmetros
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Devuelve TRUE si la conexin con el servidor MySQL est funcionando, o FALSE de lo contrario.

Ejemplos
Ejemplo 1. Un ejemplo de mysql_ping()
<?php set_time_limit(0); $con = mysql_connect('localhost', 'mysqlusuario', 'mypassword'); $bd = mysql_select_db('mi_bd'); /* Asumiendo que esta consulta toma mucho tiempo */ $resultado = mysql_query($sql); if (!$resultado) { echo 'La consulta #1 fall&oacute;, saliendo.'; exit; } /* Asegurarse de que la conexion sigue viva, si no, intentar una re-conexion */ if (!mysql_ping($con)) { echo 'Se ha perdido la conexi&oacute;n, saliendo despu&eacute;s de la consulta #1'; exit; } mysql_free_result($result); /* Ya que la conexion sigue viva, corramos otra consulta */ $resultado2 = mysql_query($sql2); ?>

Ver tambin
mysql_thread_id() mysql_list_processes()

Anterior mysql_pconnect Anterior

Inicio Subir Manual de PHP

Siguiente mysql_query Siguiente

mysql_query

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 42 de 51

(PHP 3, PHP 4, PHP 5) mysql_query -- Enva una consulta de MySQL

Descripcin
resource mysql_query ( string query [, resource identificador_de_enlace] ) mysql_query() enva una consulta (a la base de datos activa en el servidor asociado con el identificador_de_enlace dado).

Lista de parmetro s
query

Una consulta SQL La consulta no debe terminar con punto y coma.


identificador_de_enlace

Un identificador de enlace, como el regresado por mysql_co nnect(). Si identificador_de_enlace no es especficado, se asume el ltimo enlace abierto. Si no se ha abierto enlace, la funcin intenta establecer uno tal y como si se hubiera llamado a mysql_co nnect() sin argumentos, y lo usar. El resultado de la consulta es puesto en la memoria intermedia (buffer).

Valo res reto rnado s


Para las sentencias SELECT, SHOW, DESCRIBE o EXPLAIN, mysql_query() regresa un reso urce en caso exitoso, y FALSE en error. Para otro tipo de sentencia SQL, UPDATE, DELETE, DROP, etc, mysql_query() regresa TRUE en caso exitoso y FALSE en error. El resultado obtenido debe ser pasado a mysql_fetch_array(), y otras funciones para el manejo de las tablas del resultado, para accesar los datos regresados. Use mysql_num_ro ws() para encontrar cuantas filas fueron regresadas para una sentencia SELECT o mysql_affected_ro ws() para encontrar cuantas filas fueron afectadas por una sentencia DELETE, INSERT, REPLACE, o UPDATE. mysql_query() tambin fallar y regresar FALSE si el usuario no tiene permiso de accesar la o las tablas referenciadas por la consulta.

Ejemplo s
Ejemplo1. Co nsulta invlida La siguiente consulta es sintcticamente invlida de tal manera que mysql_query() falla y regresa FALSE.
<?php $result = mysql_query('SELECT * WHERE 1=1'); if (!$result) { die('Invalid query: ' . mysql_error()); } ?>

Ejemplo2. Co nsulta Vlida

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 43 de 51

La siguiente consulta es vlida, as que mysql_query() regresa un resource.


<?php // This could be supplied by a user, for example $firstname = 'fred'; $lastname = 'fox'; // Formulate Query // This is the best way to perform a SQL query // For more examples, see mysql_real_escape_string() $query = sprintf ("SELECT firstname, lastname, address, age FROM friends WHERE firstname='% s' AND lastname='%s'", mysql_real_escape_string($firstname), mysql_real_escape_string($lastname)); // Perform Query $result = mysql_query($query); // Check result // This shows the actual query sent to MySQL, and the error. Useful for debugging. if (!$result) { $message = 'Invalid query: ' . mysql_error() . "\n"; $message .= 'Whole query: ' . $query; die($message); } // Use result // Attempting to print $result won't allow access to information in the resource // One of the mysql result functions must be used // See also mysql_result(), mysql_fetch_array(), mysql_fetch_row(), etc. while ($row = mysql_fetch_assoc($result)) { echo $row['firstname']; echo $row['lastname']; echo $row['address']; echo $row['age']; } // Free the resources associated with the result set // This is done automatically at the end of the script mysql_free_result($result); ?>

Ver tambin
mysql_connect() mysql_error() mysql_real_escape_string() mysql_result() mysql_fetch_assoc() mysql_unbuffered_query()

Anterior mysql_ping Anterior

Inicio Subir Manual de PHP

Siguiente mysql_real_escape_string Siguiente

mysql_real_escape_string
(PHP 4 >= 4.3.0, PHP 5) mysql_real_escape_string -- Escapa caracteres especiales de una cadena para su uso en una sentencia SQL

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 44 de 51

Descripcin
string mysql_real_escape_string ( string cadena_no_escapada [, resource id_enlace] ) Escapa todos los caracteres especiales en la cadena_no_escapada, tomando en cuenta el juego de caracteres actual de la conexin, de tal modo que sea seguro usarla con mysql_query(). Si se van a insertar datos binarios, debe usarse esta funcin. mysql_real_escape_string() llama a la funcin de la biblioteca MySQL mysql_real_escape_string, la cual coloca barras invertidas antes de los siguientes caracteres: \x00, \n, \r, \, ', " y \x1a. Esta funcin debe usarse siempre (con algunas excepciones) para garantizar que los datos sean seguros antes de enviar una consulta a MySQL

Lista de parmetro s
cadena_no_escapada

La cadena a ser escapada.


link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_co nnect() is assumed. If no such link is found, it will try to create one as if mysql_co nnect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valo res reto rnado s


Devuelve la cadena escapada, o FALSE en caso de que ocurra un error.

Ejemplo s
Ejemplo1. Ejemplosencillode mysql_real_escape_string()
<?php // Conectarse $enlace = mysql_connect('mysql_host', 'mysql_usuario', 'mysql_contrasenya') OR die(mysql_error()); // Consulta $query = sprintf("SELECT * FROM usuarios WHERE usuario='%s' AND password='%s'", mysql_real_escape_string($usuario), mysql_real_escape_string($password)); ?>

Ejemplo2. Un ejemplode un ataque de inyeccin SQL


<?php // Consultar la base de datos para verificar si hay una coincidencia de usuario $consulta = "SELECT * FROM usuarios WHERE usuario='{$_POST ['username']}' AND password='{$_POST['password']}'"; mysql_query($consulta); // No revisamos $_POST['password'], podra ser cualquier cosa que el usuario // quiera! Por ejemplo: $_POST['username'] = 'aidan'; $_POST['password'] = "' OR ''='"; // Esto quiere decir que la consulta enviada a MySQL sera: echo $consulta; ?>

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 45 de 51

La consulta enviada a MySQL:


SELECT * FROM usuarios WHERE usuario='aidan' AND password='' OR ''=''

Esto permitira que cualquiera iniciara una sesin sin una contrasea vlida. Ejemplo 3. Una consulta "Recomendable" Mediante el uso de mysql_real_escape_string() sobre cada variable se previene la inyeccin de SQL. Este ejemplo demuestra el mtodo "recomendable" para ejecutar una consulta en la base de datos, independientemente del valor de las Comillas Mgicas.
<?php if (isset($_POST['nombre_producto']) && isset($_POST['descripcion_producto']) && isset ($_POST['id_usuario'])) { // Conectarse $enlace = mysql_connect('host_mysql', 'usuario_mysql', 'contrasenya_mysql'); if(!is_resource($enlace)) { echo "Fall la conexin con el servidor\n"; // ... registrar el error apropiadamente } else { // Revertir los efectos de magic_quotes_gpc sobre las variables si es necesario. if(get_magic_quotes_gpc()) { $nombre_producto = stripslashes($_POST['nombre_producto']); $descripcion_producto = stripslashes($_POST['descripcion_producto']); } else { $nombre_producto = $_POST['nombre_producto']; $descripcion_producto = $_POST['descripcion_producto']; } // Hacer una consulta segura $consulta = sprintf ("INSERT INTO productos (`nombre`, `descripcion`, `id_usuario`) VALUES ('%s', '%s', '% d')", mysql_real_escape_string($nombre_producto, $enlace), mysql_real_escape_string($descripcion_producto, $enlace), $_POST['id_usuario']); mysql_query($consulta, $enlace); if (mysql_affected_rows($enlace) > 0) { echo "Producto insertado\n"; } } } else { echo "Llene los campos del formulario correctamente\n"; } ?>

La consulta no se ejecutar correctamente ahora, y los ataques de inyeccin de SQL no funcionarn.

Notes
Nota: Es necesaria una conexin MySQL antes de usar mysql_real_escape_string() o de lo contrario un error de nivel E_WARNING es generado, y FALSE es devuelto. Si id_enlace no est definido, se usar la ltima conexin con MySQL. Nota: Si se habilita magic_quotes_gpc, aplique stripslashes() sobre los datos primero. Usar esta funcin sobre datos que ya han sido escapados los escapar dos veces.

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 46 de 51

Nota: Si esta funcin no es usada para escapar datos, la consulta es vulnerable a Ataques de Inyeccin de SQL. Nota: mysql_real_escape_string() no escapa % ni _. stos son comodines en MySQL si se combinan con LIKE, GRANT, o REVOKE.

Ver tambin
mysql_client_encoding() addslashes() stripslashes() La directiva magic_quotes_gpc La directiva magic_quotes_runtime

Anterior mysql_query Anterior

Inicio Subir Manual de PHP

Siguiente mysql_result Siguiente

mysql_result
(PHP 3, PHP 4, PHP 5) mysql_result -- Devuelve datos de un resultado

Descripcin
int mysql_result ( int id_resultado, int numero_de_fila [, mixed campo] ) mysql_result() devuelve el contenido de una celda de un resultado MySQL. El campo argumento puede ser el nombre del campo o el offset o tabla.nombre_del_campo. Si el nombre de la columna tiene un alias ('select foo as bar from...'), utilice el alias en lugar del nombre de la columna. Cuando se trabaja un un gran resultado, debe considerarse la utilizacin de una funcin que devuelva una fila entera ya que estas funciones son MUCHO ms rpidas que mysql_result(). Tambin, especificando un offset numrico en lugar del nombre del campo, la ejecucin ser ms rpida. Las llamadas a mysql_result() no deben mezclarse con llamadas a las otras sentencias que trabajan con un identificador de resultado. Ejemplo 1. Ejemplo mysql_result
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } $result = mysql_query('SELECT name FROM work.employee'); if (!$result) { die('Could not query:' . mysql_error()); } echo mysql_result($result, 2); // outputs third employee's name mysql_close($link); ?>

Alternativas recomendadas: mysql_fetch_row(), mysql_fetch_array(), mysql_fetch_assoc(),

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 47 de 51

mysql_fetch_object().

Anterior mysql_real_escape_string Anterior

Inicio Subir Manual de PHP

Siguiente mysql_select_db Siguiente

mysql_select_db
(PHP 3, PHP 4, PHP 5) mysql_select_db -- Selecciona un base de datos MySQL

Descripcin
int mysql_select_db ( cadena base_de_datos [, int identificador_de_enlace] ) Devuelve TRUE si todo se llev a cabo correctamente, FALSE en caso de fallo. mysql_select_db() establece la base activa que estar asociada con el identificador de enlace especficado. Si no se especfica un identificador de enlace, se asume el ltimo enlace abierto. Si no hay ningn enlace abierto, la funcin intentar establecer un enlace como si se llamara a mysql_connect(). Toda llamada posterior a mysql_query() utilizar la base activada. Ejemplo 1. Ejemplo mysql_select_db
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Not connected : ' . mysql_error()); } // make foo the current db $db_selected = mysql_select_db('foo', $link); if (!$db_selected) { die ('Can\'t use foo : ' . mysql_error()); } ?>

Ver tambin: mysql_connect(), mysql_pconnect(), mysql_query(). Por razones de compatibilidad puede usarse tambin mysql_selectdb(). Sin embargo esta funcin es obsoleta.

Anterior mysql_result Anterior

Inicio Subir Manual de PHP

Siguiente mysql_stat Siguiente

mysql_stat
(PHP 4 >= 4.3.0, PHP 5) mysql_stat -- Obtener el status actual del sistema

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 48 de 51

Descripcin
string mysql_stat ( [resource id_enlace] ) mysql_stat() devuelve el status actual del servidor.

Lista de parmetro s
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_co nnect() is assumed. If no such link is found, it will try to create one as if mysql_co nnect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valo res reto rnado s


Devuelve una cadena con el status de uptime, hilos, consultas, tablas abiertas, tablas de vaciado y consultas por segundo. Para una lista completa de variables de status, es necesario usar el comando SQL SHOW STATUS. Si id_enlace es invlido, se devuelve NULL.

Ejemplo s
Ejemplo1. Ejemplode mysql_stat()
<?php $enlace = mysql_connect('localhost', 'usuario_mysql', 'contrasenya_mysql'); $status = explode(' ', mysql_stat($enlace)); print_r($status); ?>

El resultado del ejemplo seria algo similar a:


Array ( [0] [1] [2] [3] [4] [5] [6] [7] )

=> => => => => => => =>

Uptime: 5380 Threads: 2 Questions: 1321299 Slow queries: 0 Opens: 26 Flush tables: 1 Open tables: 17 Queries per second avg: 245.595

Ejemplo2. Ejemploalternativode mysql_stat()


<?php $enlace = mysql_connect('localhost', 'usuario_mysql', 'contrasenya_mysql'); $resultado = mysql_query('SHOW VARIABLES', $enlace); while ($fila = mysql_fetch_assoc($result)) { echo $fila['Variable_name'] . ' = ' . $fila['Value'] . "\n"; } ?>

El resultado del ejemplo seria algo similar a:


back_log = 50 basedir = /usr/local/ bdb_cache_size = 8388600 bdb_log_buffer_size = 32768 bdb_home = /var/db/mysql/

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 49 de 51

bdb_max_lock = 10000 bdb_logdir = bdb_shared_data = OFF bdb_tmpdir = /var/tmp/ ...

Ver tambin
mysql_get_server_info() mysql_list_processes()

Anterior mysql_select_db Anterior

Inicio Subir Manual de PHP

Siguiente mysql_tablename Siguiente

mysql_tablename
(PHP 3, PHP 4, PHP 5) mysql_tablename -- Devuelve el nombre de la tabla de un campo

Descripcin
cadena mysql_tablename ( int id_resultado, int i ) mysql_tablename() toma un puntero de resultado devuelto por mysql_list_tables() as como un ndice (integer) y devuelve el nombre de una tabla. Se puede usar la funcin mysql_num_rows() para determinar el nmero de tablas en el puntero de resultado. Use la funcin mysql_tablename() para usar este apuntador de resultado, o cualquier funcin para las tablas resultantes como mysql_fetch_array(). Ejemplo 1. Ejemplo mysql_tablename
<?php mysql_connect("localhost", "mysql_user", "mysql_password"); $result = mysql_list_tables("mydb"); $num_rows = mysql_num_rows($result); for ($i = 0; $i < $num_rows; $i++) { echo "Table: ", mysql_tablename($result, $i), "\n"; } mysql_free_result($result); ?>

Vea tambin mysql_list_tables(), mysql_field_table(), mysql_db_name().

Anterior mysql_stat Anterior

Inicio Subir Manual de PHP

Siguiente mysql_thread_id Siguiente

mysql_thread_id
(PHP 4 >= 4.3.0, PHP 5)

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 50 de 51

mysql_thread_id -- Devuelve el ID del hilo actual

Descripcin
int mysql_thread_id ( [resource id_enlace] ) Recupera el ID del hilo actual. Si la conexin se ha perdido, y se ejecuta una reconexin con mysql_ping(), el ID del hilo cambiar. Esto quiere decir que slo obtenga el ID del hilo cuando lo necesite.

Lista de parmetro s
link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_co nnect() is assumed. If no such link is found, it will try to create one as if mysql_co nnect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valo res reto rnado s


El ID del hilo en caso de tener xito, o FALSE si ocurre un error.

Ejemplo s
Ejemplo1. Ejemplode mysql_thread_id()
<?php $enlace = mysql_connect('localhost', 'mysql_user', 'mysql_password'); $id_hilo = mysql_thread_id($enlace); if ($id_hilo){ printf("El ID del hilo actual es %d\n", $id_hilo); } ?>

El resultado del ejemplo seria algo similar a:


El ID del hilo actual es 73

Ver tambin
mysql_ping() mysql_list_pro cesses()

Anterior mysql_tablename Anterior

Inicio Subir Manual de PHP

Siguiente mysql_unbuffered_query Siguiente

mysql_unbuffered_query
(PHP 4 >= 4.0.6, PHP 5) mysql_unbuffered_query -- Enva una consulta SQL a MySQL, sin recuperar ni colocar en bfer las filas de resultado

Descripcin

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Funciones MySQL

Pgina 51 de 51

resource mysql_unbuffered_query ( string consulta [, resource id_enlace] ) mysql_unbuffered_query() enva la consulta SQL a MySQL, sin recuperar ni colocar en bfer las filas de resultado automticamente, como mysql_query() lo hace. Por una parte, esto ahorra una considerable cantidad de memoria con las consultas SQL que producen conjuntos grandes de resultados. Por otra parte, usted puede empezar a trabajar con el conjunto de resultado inmediatamente despus de que la primera fila ha sido recuperada: no necesita esperar hasta que la consulta SQL completa haya sido ejecutada. Cuando se usan mltiples conexiones con la BD, necesita indicar el parmetro opcional id_enlace.

Lista de parmetros
consulta

Una consulta SQL


link_identifier

The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level warning is generated.

Valores retornados
Para sentencias SELECT, SHOW, DESCRIBE o EXPLAIN, mysql_unbuffered_query() devuelve un valor resource en caso de xito, o FALSE si ocurre un error. Para otro tipo de sentencias SQL, UPDATE, DELETE, DROP, etc, mysql_unbuffered_query() devuelve TRUE en caso de xito o FALSE si ocurre un error.

Notes
Nota: Los beneficios de mysql_unbuffered_query() vienen por un precio: No puede usar mysql_num_rows() ni mysql_data_seek() en un conjunto de resultados devuelto por mysql_unbuffered_query(). Tambin tendr que recuperar todas las filas de resultado de una consulta SQL sin bfer, antes de poder enviar una nueva consulta SQL a MySQL.

Ver tambin
mysql_query()

Anterior mysql_thread_id

Inicio Subir

Siguiente MySQL Functions (PDO_MYSQL)

file:///C:/Users/Aleix/AppData/Local/Temp/~hh9314.htm

03/09/2012

Anda mungkin juga menyukai