Para conectarnos a la base de datos en primer lugar debemos conocer el nombre
de nuestra base de datos, nombre de usuario y contraseña.
Esto lo podemos conocer directamente desde el phpMyAdmin que nos proporcionan
la mayoria de los servidores. En el ejemplo que van a ver a continuación
creamos una variable la cual contiene la función mysql_connect();
esta nos indica de que hemos realizado una sesión dentro del MySQL, devolvera
"false" en caso
de no conseguirse dicha sesión, y "true"
en caso de conseguirse, para realizar dicha conexión debemos especificar
nuestro nombre de usuario y contraseña, esta sesión nos hara poder
acceder a seleccionar la base de datos que queremos, dicha sesión durara
hasta que usemos mysql_close();
para cerrar la sesión dentro del MySQL.
La función mysql_select_db();
devuelve el valor "false"
en caso de no conectarse a dicha base de datos, claro esto ocurrira en caso
de no exisitir la base de datos ó en caso de colocar nombre de usuario
y contraseña falsos, y devuelve "true"
en caso de lograr dicha conexión a la base de datos, luego procedemos
a colocar la variable $con para indicar nuestra sesión en la base de
datos. MySQL es "case-sensitive", esto quiere decir que diferencia
base de datos que tenga nombre en letras mayúsculas y minusculas, si
le colocamos a una base de datos el nombre de 'Usuarios', para llamarla no va
ser lo mismo si colocamos como nombre 'usuarios' ya que buscara una base de
datos que contenga el nombre de 'usuarios' y no 'Usuarios', por eso se recomienda
mantener un standard a la hora de elegir los nombres de las distintas base de
datos.
<?php
$con =
mysql_connect('localhost','usuario','contraseña');
// Conexión a la MySQL.
mysql_select_db('base_de_datos',$con);
// Elegimos nuestra base de datos, registramos
nuestra conexión a la MySQL.
?>
Una vez logrado la conexión a la base de datos, podemos realizar nuestras
consultas a dicha base. Si todavía no hemos creado una tabla en la base
de datos debemos crearla para poder realizar con exito dichas consultas. La
función para realizar dichas consultas se llama mysql_query();
esta función esta constituida por el tipo de sentencia a realizar y indicar
el identificador de la conexión a la base de datos, en este caso $con.
Los valores retornados para las sentencias SELECT, SHOW, DESCRIBE o EXPLAIN,
regresa un "resource"
en caso exitoso, y "false"
en error. Para otro tipo de sentencia SQL, UPDATE, DELETE, DROP, etc, 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.
Los tipos de sentencia mas comunes son SELECT, UPDATE, DELETE, las cuales a
su vez estan constituidos por otras sentencias que nos pueden modificar el tipo
de consulta que queremos hacer. Nota: Antes de hacer
los querys tienes que incluir tu conexión a la base de datos, es decir,
el porcedimiento que anteriormente realizamos, lo puedes
colocar en un archivo e incluirlo mediante un include();
si es de tu preferencia, si esto no se hace no podrás realizar dichos
querys ya que no existe conexión a la MySQL.
<?php
// Variable que contiene nuestra
consulta
$query = mysql_query("SELECT
* FROM usuarios ORDER BY id DESC LIMIT 0,50",$con);
.
?>
¿CUÁL ES LA FUNCIÓN DEL * ?
La función del * despues de los SELECT ó otro tipo de sentencia,
es elegir todos los campos de una tabla, es decir, si usamos * en una consulta
elegiremos todos los campos que tenga dicha tabla. De esta manera podremos acceder
a la tabla de una manera total. De igual forma podemos elegir solo un campo
en caso de tener una gran cantidad de campos en la tabla y solo queremos obtener
la información de un solo campo.
<?php
// Seleccionando todos los campos en la
tabla usuarios
$query =
mysql_query('SELECT
* FROM usuarios',$con);
// Seleccionando solo el campo nombre de
la tabla usuarios
$query =
mysql_query('SELECT
nombre FROM usuarios',$con);
?>
INSERT INTO tabla
Esta consulta su valor es hacer un "insert", en la tabla de la base
de datos especificada, es decir, insertar ó registra una
nueva información en la tabla de la base de datos, esto de acuerdo a
los campos especificados en la base de datos, debemos conocer nuestra tabla
donde queremos hacer el insert y los campos que queremos registrar, en el siguiente
query la tabla es 'usuarios' y soló insertamos dos valores en dos campos
los cuales son primero y segundo.
<?php
// Simple INSERT en la tabla usuarios, campos primero y segundo.
$query = mysql_query("INSERT INTO usuarios (primero,segundo) VALUES ('$primero',$segundo')",$con);
?>
UPDATE SET tabla
Esta consulta su valor es hacer un "update", en la tabla de la base
de datos especificada, es decir, hacer una actualización ó
modificación en ella, alterando el valor de solo los campos especificados
en la consulta, esta consulta resultará exitosa solo si el registro existe,
tiene que existir en la base de datos para lograr la actualización o
modificación en ella, podemos utilizar algunas sentencias como WHERE
en dichos querys con update para que se modifique en un registro especifico,
si no se utiliza el WHERE actualizaremos todos los campos de la tabla.
Para el ejemplo que viene a continuación hacemos un update en la tabla
'usuarios' donde solo se va a actualizar los campos primero y segundo donde
el campo id tenga un valor. Por ejemplo para un sistema de usuarios se actualizaria
donde el número de id sea 3, los campos primero y segundo.
<?php
// UPDATE en la tabla usuarios en los campos primero y segundo, donde el campo id es igual a 3
$query = mysql_query("UPDATE usuarios SET primero='$primero',segundo='$segundo' WHERE id='3'",$con);
?>
DELETE FROM tabla
Esta consulta su valor es hacer un "delete", en la tabla de la base
de datos especificada, es decir, borrar datos de una tabla de la base
de datos. Al igual que la sentencia UPDATE si no se especifica mediante un
WHERE lo que se desea borrar puedes llegar a perder todos los datos registrados
en la tabla.
<?php
// DELETE en la tabla usuarios donde la
id sea igual a 5
$query =
mysql_query("DELETE
FROM usuarios WHERE id='5'",$con);
?>
ORDER BY campo
Su principal función es ordenar los datos de una base de datos, segun
el campo especificado, recordemos que dicho campo debe estar en la tabla de
la base de datos.
<?php
// ORDER BY, este query ordernara los campos
por el campo primero de la tabla usuarios
$query =
mysql_query("SELECT
* FROM usuarios ORDER BY primero DESC LIMIT 0,20",$con);
?>
DESC, ASC
Son formas de ordenamiento, es decir, como van hacer ordenados los datos luego
de hacer un ORDER BY. DESC ordena los datos en forma descendete de mayor
a menor y ASC ordena en forma ascendente es decir de menor a mayor, este campo
es comúnmete utilizado para valores númericos.
<?php
// DESC, ordenando los campos en forma descendente
por el campo id de la tabla usuarios
$query =
mysql_query("SELECT
* FROM usuarios ORDER BY primero DESC LIMIT 0,20",$con);
// ASC, ordenando los campos en forma ascendete
por el campo id de la tabla usuarios
$query =
mysql_query("SELECT
* FROM usuarios ORDER BY primero ASC LIMIT 0,20",$con);
?>
WHERE campo
Traducido sería "donde", este sirve para cambiar los datos
donde tal campo en la tabla es igual a un valor especifico. Dicha sentencia
tiene a la vez varias condiciones para seleccionar de otra manera los registros,
los cuales puedes verlos en RincónAstur
<?php
// Query que tomaria la información solo
del usuario número 5 en la tabla usuarios
$query =
mysql_query("SELECT
* FROM usuarios WHERE id='5'",$con);
?>
LIMIT número principal, número limite
Limita el número de registro a mostrar, se coloca el número principal
el cual va hacer el número desde donde va a comenzar los registros hasta
el número limite el cual va hacer el número limite de los datos.
Ejemplo: LIMIT 0, 20 esto indica que la consulta debe de mostrar 20 resultados
a partir del primer registro. LIMIT 7, 20 esto indica que la consulta
debe mostrar los resultados a partir del registro número 8, desde 8 por
que LIMIT considera el primer registro como cero. (0 = 1, 1 = 2, 3 =
4)
<?php
// Limitando los resultados de la tabla
usuarios, nos mostrara solo 20 usuarios
$query =
mysql_query("SELECT
* FROM usuarios ORDER BY primero DESC LIMIT 0,20",$con);
// No colocando limite, se mostraran todos
los usuarios registrados
$query =
mysql_query("SELECT
* FROM usuarios ORDER BY primero DESC",$con);
?>
MAX(campo)
Devuelve el valor máximo de ese campo en todos los registros de
la tabla.
<?php
// Seleccionando el último valor registrado
en el campo primero de la tabla de usuarios
$query =
mysql_query('SELECT
MAX(primero) FROM usuarios',$con);
?>
MIN(campo)
Devuelve el valor mínimo de ese campo en todos los registros de
la tabla.
<?php
// Seleccionando el último valor registrado
en el campo primero de la tabla de usuarios
$query =
mysql_query('SELECT
MAX(primero) FROM usuarios',$con);
?>
RANDOM(campo)
Selecciona aleatoriamente un valor del campo seleccionado de una tabla.
<?php
// Seleccionando un valor alelatorio en
el campo segundo de la tabla de usuarios
$query =
mysql_query('SELECT
RANDOM(segundo) FROM usuarios',$con);
?>
COUNT(*) AS TOTAL
Cuenta el número total de campos registrados en la base de datos, algunos
lo describen como el equivalente de mysql_num_rows(); que cuenta el número
de filas de una determinada tabla.
<?php
// Con este query, podemos contar el número
de registro en nuestra tabla usuarios
$query =
mysql_query('SELECT
COUNT(*) AS TOTAL FROM usuarios',$con);
?>
LIKE campo
Busca un valor especifico en determinado campo de la tabla, usado comunmente
para hacer búsquedas rápidas para buscar en una base de datos.
Esta sentencia se utiliza con unos signos de % la función de estos es
como buscar en el campo, si lo colocamos de esta manera '%campo%' buscara dicho
valor en todo el campo, si lo colocamos '%campo' buscara solo si el campo comienza
con ese valor y 'campo%' si termina con ese valor.
<?php
// Buscando si el valor de Joosé esta en
el campo nombre
$query =
mysql_query("SELECT
* FROM usuarios WHERE nombre LIKE '%Joosé%'",$con);
?>
BETWEEN valor AND valor
Busca en un campo valores que este entre tal valor y otro valor de ese
mismo campo, estos valores debe estar contenidos en el campo. Esta sentencia
es utilizada frecuentemente para buscar entre valores númericos,
como por ejemplo: fechas. Con esta sentencia podriamos conocer en caso de tener
una tabla en la cual se registran noticias, si queremos conocer las noticias
que fueron publicados entre enero y febrero.
<?php
// Seleccionando todos los usuarios que
tenga de edad entre 18 y 25
$query =
mysql_query("SELECT
* FROM usuarios WHERE edad BETWEEN 18 AND 25 ORDER BY id DESC LIMIT 0,50",$con);
?>
GROUP BY campo
Agrupa los registros por el campo seleccionado, dicha sentencia agrupa
por los diferentes valores que tenga un campo en dicha tabla de la base de
datos, dicho valor tambien puede ser númerico. Muy utilizada en los
sistemas de noticias, blogs, usuarios para agrupar los posteos, noticias ó
usuarios por fecha de registro, tipo de noticia ó usuario, mes de inicio,
etc. En este ejemplo que vamos a ver a continuación se agrupan las noticias
por el tipo de noticias que hay registrada en la base de datos, el campo tipo
posse estos valores: deportes, nacionales, internacionales.
<?php
// Agrupando los tipos de noticias por el
tipo de noticia (deportes, nacionales, internacionales)
$query =
mysql_query('SELECT
* FROM noticias GROUP BY tipo ORDER BY id DESC LIMIT 0,50',$con);
?>
José Guevara / <joose.guevara@gmail.com>
Para PHP-HISPANO.NET,
2005