13-Conexion con Mysql

Una vez que ya hemos explicado un poco por encima todas las operaciones posibles y lógicas que podemos hacer con una base de datos en el lenguaje SQL llega el momento de combinarlo con la potencia de PHP y para ello usaremos el programa Mysql.

Mysql es uno de los gestores de bases de datos mas utilizados en entornos en los cuales se emplea PHP ya que php dispone de numerosas funciones que se compaginan perfectamente con mysql.La forma generica de obtener informacion de tablas en Mysql es la siguiente:

-Conexion con el gestor.
-Preparacion de la consulta SQL.
-Ejecucion de la consulta.
-Procesamiento del resultado obtenido en el cursor.
-Liberacion de recursos(esta es opcional, aunque es recomendable).
-Cierre de la conexion con el gestor.

Para realizar estas y otras muchas mas cosas disponemos de las siguientes funciones:

Funcion
Descripcion
mysql_connect("host","usuario","password")
Establece la conexion con el servidor. Recibe el host y el usuario y contraseña con el que debe conectar.
mysql_select_db("base de datos",conexion)
Selecciona la base de datos sobre la cual se va a trabajar
mysql_query(consulta,conexion)
Ejecuta la consulta SQL indicada como primer parametro.
mysql_num_fields(cursor)
Devuelve el numero de atributos que figuran en el cursor que se le pasa como parametro y en el que se almacena el resultado de la consulta
mysql_fetch_row(cursor)
Avanza a la siguiente posicion de la fila en cursor.Devuelve un array que contiene en sus celdas cada uno de los valores de los atributos de la fila.
mysql_free_result(cursor)
Libera los recursos asociados al cursor.
mysql_close(conexion)
Cierra la conexion establecida con mysql_connect.

Una de las ventajas que proporciona la altisima integracion que PHP y MYSQL tienen es la existencia de funciones que permiten al programador acceder a las diferentes estructuras que conforman la base de datos. Algunas de las funciones son:

Funcion
Descripcion
mysql_list_dbs(conexion)
Devuelve en un cursor los nombres de las bases de datos disponibles en el servidor al que se haya conectado con mysql_connect
mysql_list_tables(base_datos,conexion)
Devuelve en un cursor los nombres de las tablas disponibles en la base de datos.
mysql_tablename(cursor,numero_fila)
Devuelve el nombre de la tabla o base de datos en la que esta el cursor indicado
mysql_field_name(cursor,numero_col)
Devuelve el nombre del campo cuyo indice se pasa como segundo parametro
mysql_field_type(cursor,numero_Col)
Devuelve el tipo del campo cuyo indice se pasa como sgundo parametro
mysql_field_len(cursor,numero_col)
Devuelve la longitud del campo cuyo indice se pasa como segundo parametro
mysql_field_flags(cursor,numero_col)
Devuelve una serie de indicativos correspondientes a caracteristicas del atributo cuyo indice se pasa como segundo parametro
mysql_affected_rows(conexion)
Devuelve el numero de filas afectadas por una actualizacion o borrado
mysql_change_user(usuario,password)
Cambia de usuario
mysql_create_db(basedatos)
Crea una base de datos con el nombre pasado por parametro
mysql_drop_db(basedatos)
Elimina la base de datos pasada por parametro
mysql_insert_id(cursor)
Devuelve el valor generado para un AUTOINCREMENT