Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Definición de SQL
SQL (StructuredQueryLanguage) – lenguaje de consulta estructurado, que
Server.
IBM, quien desarrolló un lenguaje con las características de las bases de datos
después dar lugar a SQL-89 en la que destacaron como mejoras las definición
92 o SQL 2.
SQL 2006 define las maneras en las cuales el SQL se puede utilizar
sentencia TRUNCATE.
cláusula FETCH.
entender mejor este tipo de programa, con anterioridad a los RDBMS estaban
Los RDBMS son una mejora de los DBMS al introducir el modelo relacional,
permitiendo la relación entre tablas usando claves primarias, claves foráneas e
índices.
Como principales diferencias entre DBMS y RDBMS.
Los DBMS están orientados para aplicaciones que gestiones pocos datos,
pues puede aumentar la complejidad y lentitud a mayor volumen de datos,
debido entre cosas a que es muy común los datos redundantes. Como
sistemas DBMS tenemos LibreOffice Base y FoxPro.
Los RDBMS están orientados a gestionar un mayor volumen de datos gracias
al modelo relacional, permitiendo realizar consultas más rápidas y también se
evita los datos redundantes mediante el uso de claves de índices. Como
sistemas tenemos SQL Server, Oracle, MySQL, MariaDB, etc.
Modelo relacional
Se define por la estructura de tabla, teniendo un nombre y los atributos o
campos que la componen. Cuando se agregan elementos a la tabla se habla
de “instancia de relación».
Ejemplo, entidad Consola cuyos atributos describen a la consola (nombre, tipo,
marca) y cada tupla representa a una consola.
Para del modelo relacional, las tablas necesitan de una clave primaria (PK) que
identifique unívocamente una tupla, es decir, no puede repetirse y tampoco
puede tener valor nulo. Una clave primaria puede esta combinada por más de
un campo, o también muchas veces creamos un campo ficticio como clave
primeria, por ejemplo, Nº Persona como identificador. Puede llegar a ver varias
combinaciones para obtener la clave primaria, pero sólo una de ellas será la
escogida, las demás serán claves candidatas.
Otra característica es que los atributos deben ser “atómicos» es decir, los
valores de una columna no se pueden separar en varios valores, no se puede
tener un multivalor.
Por ejemplo: CONSOLA
JUEGO
Cuando vemos doble línea, nos está indicando que como mínimo de debe
tener un valor.
En este caso un equipo debe tener al menos un entrenador y un entrenador
debe pertenecer a un equipo.
Una consola puede tener varios juegos y un juego debe estar en varias
consolas.
Las relaciones entre tablas son muy importantes, dependiendo de lo que
necesitemos para el desarrollo de nuestra Base de Datos ya que podría haber
relación de más de 2 tablas.
Nombre del servidor dejamos el que viene por defecto, coincide con el
nombre del equipo servidor
Obtendríamos
DIVIDE – Devuelve como resultado todas las tuplas de la primera tabla que se
correspondan con la segunda tabla.
Consulta: Mostrar todos los juegos si hay consola PS4
SELECT DISTINCT titulo
FROM juego
WHERE EXISTS(
SELECT id_juego
FROM consola_juego
WHERE EXISTS (SELECT id_consola
FROM consola
WHERE consola.nombre=»PS4″)
)
Consulta: Mostrar todos los juegos de PS4
SELECT DISTINCT titulo
FROM juego
WHERE id_juego IN (SELECT id_juego
FROM consola_juego
WHERE consola_juego.id_consola IN (SELECT id_consola
FROM consola
WHERE consola.nombre=»PS4″)
)
Comandos de SQL
Los comandos de SQL son sentencias que se pueden utilizar para diferentes
la base de datos.
datos
…]
[ , [ vínculo_de tabla] … ] )
Anuncios
smallmoney.
el momento que se inserta una fila. Puede iniciarse con un valor o nulo.
CHECK { expresión_condicional }
titulo varchar(50),
genero varchar(50),
id_juego bigint,
ON consola (marca)
¿Qué pasaría si creamos el campo fecha con valores por defecto y después
‘2017-01-01’
Anuncios
INFORMA SOBRE ESTE ANUNCIO
Msg 5074, Level 16, State 1, Line 1
‘fecha_lanzamiento’.
O la tabla entera
KEY constraint.
En este caso no nos lo permitirá al haber una clave foránea que hace
base de datos
IS ‘ ‘;
Caution: Changing any part of an object name could break scripts and stored
procedures.
Si modificamos el nombre, los script podrían dejar de funcionar. Hay que
tener en cuenta también las relaciones que hay en la tabla, en Oracle por
un criterio determinado
FROM lista_referencias_tabla
[ WHERE expresión_condicional ]
[ GROUP BY lista_columnas ]
[ HAVING expresión_condicional ]
[ ORDER BY lista_columnas ]
Se puede buscar todos los valores de un campo o varios campos de una tabla,
únicas
WHERE se utiliza para generar una condición que debe cumplirse, aquellos
condicional.
ascendente.
Para ver un ejemplo, vamos a ver las tablas de nuestra base de datos
FROM consola
SELECT titulo
FROM juego
SELECT id_juego
FROM consola_juego
WHERE consola_juego.id_consola IN(
SELECT id_consola
FROM consola
WHERE consola.nombre=’3DS’)
SELECT SUM(consola_juego.stock)
FROM consola_juego
SELECT id_juego
FROM juego
WHERE juego.genero=’accion’)
Consulta: Titulo de aquellos juegos con stock total que supere las 20 unidades
SELECT juego.titulo
FROM juego
SELECT id_juego
FROM consola_juego
GROUP BY id_juego
única operación
INSERT INTO table_name
VALUES (value1,value2,value3,…);
VALUES(‘3DS’,’Portatil’,’Nintendo’);
especificados
UPDATE table_name
SET column1=value1,column2=value2,…
WHERE some_column=some_value;
UPDATE juego
DELETE – Utilizado para eliminar registros de una tabla de una base de datos
valores.
ONE’,’Microsoft’);
3DS’,’Portatil’,’Nintendo’);
INSERT INTO consola_temporal(nombre, tipo, marca)
VALUES(‘PSVITA’,’Portatil’,’Sony’);
ON(C.id_consola=CT.id_consola)
forma.
[Atributos de la rutina]
BEGIN instrucciones
END
DELIMITER //
BEGIN
WHILE contador<=n DO
SELECT contador;
END WHILE;
END//
DELIMITER //
BEGIN
END//
DELIMITER ;
CALL contador_hasta_n(5)
En SQL SERVER
USE coleccion
GO
AS
GO
exec mostrar_juegos
permitirá.
FROM juego
SELECT id_juego
FROM consola_juego
GROUP BY id_juego
Nos muestra que se realiza una consulta primaria y depende del resultado de la
LOCK TABLES
UNLOCK TABLES
3DS’,’Portatil’,’Nintendo’);
LOCK TABLE.
UNLOCK TABLES;
3DS’,’Portatil’,’Nintendo’);
porque sino entonces nos mostrar error pero nos mostrará mensaje de 0
3DS’,’Portatil’,’Nintendo’);
UNLOCK TABLES;
En este caso, nos mostrará mensaje de 0 columnas devueltas y al mismo
base de datos. La diferencia entre una tabla y una vista, es que las tablas
almacenan datos mientras que las vistas no. Si probamos ejecutar la siguiente
consulta:
3DS’,’Portatil’,’Nintendo’);
Nos dará error de sintaxis. Eso es porque las vistas no están para consultas de
inserción o modificación
Si ejecutamos:
3DS’,’Portatil’,’Nintendo’);
Como la vista v_ejemplo tiene relación que la tabla consola, se insertará en la
La gran utilidad que tienen las vistas es para guardar consultas que queramos
Comandos de SQL
Finalizamos viendo los comando DCL y TCL.
usuario quien crea el objeto es el propietario y por defecto tiene todos los
concesión. El usuario propietario puede asignar los permisos que desee a otro
modificar.
Anuncios
Los usuarios que crean una base datos al ser propietarios tienen asignados por
defecto todos los permisos, para los demás usuario se les puede asignar o
revocar permisos.
En este caso el usuario propietario le asignará el permiso SELECT mediante la
sentencia GRANT. Esto significa que solo podrá ver datos de la tabla, pero no
insertar o borrar.
usuario usergamer
RESTRIC se usa cuando existe en un solo objeto, esta podría fallar en el caso
que el usuario al que se quiere quitar los permisos haya asignado permisos a
otros usuarios. Para ello se usa CASCADE que permitirá los permisos al
También se destruirán los objetos que hayan sido creados por esos permisos.
commit
ejecutado
ROLLBACK.
con COMMIT.
SET TRANSACTION – Inicializa una transacción en la base de datos,
READ UNCOMMITTED: permite leer filas que han sido modificadas por
transacción.
modificar los datos leídos por la transacción actual hasta que finalice; y
con COMMIT.