Lenguaje
SQL y PHP
| En este capítulo
nos dedicaremos a explicar el lenguaje SQL ya que posteriormente lo usaremos
mucho en las conexiones de PHP con MySQL. |
|
Creación y modificación
de Tablas en SQL
MySQL esta organizado a partir de
tablas y dichas tablas contienen campos. Cada campo es capaz de contener
un tipo de dato. Los tipos de datos que es posible crear en el lenguaje
SQL son:
|
Tipo
|
Descripción
|
|
Tinyint[Unsigned]
|
Entero de 0 a 255 o de -128 a
128 |
|
Smallint[Unsigned]
|
Entero de 0 a 65535 o de -32768
a 32768 |
|
Int
o Integer
|
Entero normal.Rango de -2147483648
a 214783648 |
|
Float[
(M,D) ]
|
Número de coma flotante
de simple precisión si no se pasa ningun argumento M es el nº
de digitos y D el nº de decimales |
|
Double
[ (M,D) ]
|
Número de coma flotante
de doble precision. Siempre dispone de signo M y D |
|
Decimal
[ (M [,D]) ]
|
Número almacenado como
cadena de caracteres M es el número total de dígitos y D
el nº de decimales |
|
Date
|
Tipo fecha.Admite formatos "AAAA-MM-DD"
o "AA-MM-DD" o "AAMMDD |
|
Time
|
Tipo hora.Admite formato "HH:MM:SS"
o "HHMMSS" o "HHMM" o "HH |
|
Char(longitud)
|
Cadena de caracteres de la longitud
indicada.Se reserva el espacio en caracteres aunque no se usen |
|
Varchar(longitud)
|
Cadena de caracteres de la longitud
indicada que se almacena con su ocupacion.Máxima longitud: 255 caracteres |
|
Blob
|
Tipo destinado a almacenar bits
sin intrepretar.Se usa para almacenar texto mas largo de 255 caracteres.Diferencia
mayúsculas de minúsculas. |
|
Text
|
Tipo destinado a almacenar bits
sin intrepretar.Se usa para almacenar texto mas largo de 255 caracteres.No
diferencia mayúsculas de minúsculas. |
CREATE
TABLE Nombre_tabla
(Campo1
Tipo_dato Not Null,
Campo2
Tipo_dato,
PRIMARY
KEY (Campo3));
Esto nos crearía una tabla
con 3 campos de los cuales Campo3 es un valor único, es decir, que
no puede ser sobreescrito.
|
|
Para eliminar una tabla usaremos:
DROP TABLE
Nombre_tabla;
Para modificar la estructura de la tabla usaremos
la siguiente sintaxis:
ALTER TABLE
Nombre_tabla
[ADD Nombre_atributo
Definición] //Añadiría un
nuevo campo
[CHANGE AntiguoNombreAtributo
NuevoNombreAtributo Definición] //Cambiaría
un campo
[DROP NombreAtributo];
//Borraría un campo
Los índices son una estructura de acceso
que permiten organizar los datos contenidos en una tabla. Para crear un
índice usaríamos la siguiente sintaxis:
CREATE [UNIQUE]
INDEX NombreIndice
ON Tabla (Campos);
Manipulación
de datos
| Inserción
de datos
Para insertar
datos en la tabla se realiza mediante el comando insert y su sintaxis es
la siguiente:
INSERT INTO
NombreTabla [Campo1,Campo2...CampoN] VALUES (Valor1,Valor2...ValorN);
|
|
Consultas de datos
Para esta acción
usamos el comando SELECT y la sintaxis es la siguiente:
SELECT ([*]/[Atributos])
FROM Tabla/s [WHERE ListaCondiciones] [GROUP BY Campo] [HAVING ListaCondiciones]
[ORDER BY Campo]
Existen un
conjunto de funciones dentro de las consultas de datos que nos permiten
obtener información o realizar operaciones con respecto a las filas.
Las funciones son:
|
Función
|
Descripción
|
|
COUNT(*/DISTINCT
Campo)
|
Cuenta el numero de filas |
|
SUM(Campo)
|
Suma los valores del atributo
indicado |
|
AVG(Campo)
|
Obtiene la media aritmética
del atributo |
|
MAX(Campo)
|
Obtiene el valor máximo
del atributo |
|
MIN(Campo)
|
Obtiene el valor mínimo
del atributo |
Eliminación
de datos
Para eliminar
datos usamos la sentencia DELETE cuya sintaxis es la siguiente:
DELETE FROM
NombreTabla [WHERE Condición];
|