Download Diapositiva 1 - GridMorelos.

Document related concepts

Microsoft SQL Server wikipedia , lookup

Navicat wikipedia , lookup

SQL Server Compact wikipedia , lookup

Adaptive Server Anywhere wikipedia , lookup

SQL:1999 wikipedia , lookup

Transcript
UNIVERSIDAD AUTÓNOMA DEL
ESTADO DE MORELOS
Centro de Investigaciones en Ingeniería y Ciencias
Aplicadas
Presentación del Sistema Manejador de Base de Datos
SQL
Structured Query Lenguage
Presentan
Alberto Medrano Cabello
Román Orozco Linares
INTRODUCCIÓN
Es un lenguaje declarativo de acceso a bases de datos relacionales que permite
especificar diversos tipos de operaciones sobre las mismas. Una de sus
características es el manejo del álgebra y el cálculo relacional permitiendo lanzar
consultas con el fin de recuperar -de una forma sencilla- información de interés de
una base de datos, así como también hacer cambios sobre la misma. Es un lenguaje
de cuarta generación (4GL).
Los orígenes del SQL están ligados a los de las bases de datos relacionales. En 1970
E. F. Codd propone el modelo relacional y asociado a este un sublenguaje de acceso
a los datos basado en el cálculo de predicados. Basándose en estas ideas, los
laboratorios de IBM definen el lenguaje SEQUEL (Structured English QUEry
Language) que más tarde sería ampliamente implementado por el SGBD (Sistemas
Gestores de Bases de Datos) experimental System R, desarrollado en 1977 también
por IBM.
El SEQUEL terminaría siendo el predecesor de SQL, siendo éste una versión
evolucionada del primero. El SQL pasa a ser el lenguaje por excelencia de los
diversos SGBD relacionales surgidos en los años siguientes y es por fin estandarizado
en 1986 por el ANSI, dando lugar a la primera versión estándar de este lenguaje, el
"SQL-86" o "SQL1". Al año siguiente este estándar es también adoptado por la ISO.
Sin embargo este primer estándar no cubre todas las necesidades de los
desarrolladores e incluye funcionalidades de definición de almacenamiento que se
consideraron suprimir. Así que en 1992 se lanza un nuevo estándar ampliado y
revisado del SQL llamado "SQL-92" o "SQL2".
En la actualidad el SQL es el estándar de facto de la inmensa mayoría de los SGBD
comerciales. Y, aunque la diversidad de añadidos particulares que incluyen las
distintas implementaciones comerciales del lenguaje es amplia, el soporte al estándar
SQL-92 es general y muy amplio.
El ANSI SQL sufrió varias revisiones y agregados a lo largo del tiempo:
Año
1986
Nombre
SQL-86
Alias
SQL-87
Comentarios
Primera publicación hecha por ANSI. Confirmada por ISO en 1987.
1989
SQL-89
1992
SQL-92
SQL2
Revisión mayor.
1999
SQL:1999
SQL2000
Se agregaron expresiones regulares, consultas recursivas (para
relaciones jerárquicas), triggers y algunas características orientadas
a objetos.
2003
SQL:2003
Introduce algunas características de XML, cambios en las
funciones, estandarización del objeto sequence y de las columnas
autonumericas.
2006
SQL:2006
ISO/IEC 9075-14:2006 Define las maneras en las cuales el SQL se
puede utilizar conjuntamente con XML. Define maneras importar y
guardar datos XML en una base de datos SQL, manipulándolos
dentro de la base de datos y publicando el XML y los datos SQL
convencionales en forma XML. Además, proporciona facilidades
que permiten a las aplicaciones integrar dentro de su código SQL el
uso de XQuery, lenguaje de consulta XML publicado por el W3C
(World Wide Web Consortium) para acceso concurrente a datos
ordinarios SQL y documentos XML.
Revisión menor.
CARACTERÍSTICAS IMPORTANTES
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales permitiendo gran variedad de operaciones
sobre los mismos.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento", que gracias a su
fuerte base teórica y su orientación al manejo de conjuntos de registros, y no a
registros individuales, permite una alta productividad en codificación y la
orientación a objetos. De esta forma una sola sentencia puede equivaler a uno o
más programas que utilizas en un lenguaje de bajo nivel orientado a registro.
Ofrece una plataforma de datos completa, más segura, confiable, administrable y
escalable para aplicaciones críticas. Permite que los desarrolladores creen
aplicaciones nuevas, capaces de almacenar y consumir cualquier tipo de datos en
cualquier dispositivo, y que todos los usuarios tomen decisiones informadas en base
a conocimientos relevantes.
DEBILIDADES Y FORTALEZAS
FORTALEZAS
Protege la información. En SQL Server 2008 se mejoran el cumplimiento y la
seguridad con capacidades de auditoría completas, cifrado de datos transparente y
configuración de la superficie para minimizar las amenazas de seguridad al habilitar
sólo los servicios que necesita.
Asegura la continuidad empresarial. SQL Server 2008 incluye características de
mirrorring de bases de datos, para aumentar la confiabilidad de las aplicaciones y
simplificar la recuperación de éstas en caso de error de almacenamiento.
Ofrece respuestas previsibles. SQL Server 2008 ofrece una recopilación más amplia
de datos de rendimiento, un repositorio centralizado de datos para almacenar los
datos de rendimiento y una compresión de datos mejorada que le permite
almacenar más datos de manera eficaz.
FORTALEZAS
Minimiza la supervisión administrativa. Declarative Management Framework
(DMF) es un nuevo marco de administración basado en directivas en SQL Server
2008, que simplifica las operaciones de mantenimiento cotidiano y reduce el coste
total de propiedad al definir un conjunto común de directivas para la mayoría de las
operaciones con bases de datos.
Integra cualquier tipo de datos. SQL Server 2008 ofrece un rendimiento mejorado
de las consultas y un almacenamiento de datos eficiente y rentable que le permite
administrar y redimensionar grandes cantidades de usuarios y de datos.
Envía información relevante. Con SQL Server 2008 los usuarios pueden crear
informes complejos con Microsoft Office Word y Microsoft Office Excel y
compartirlos de manera interna y externa. El acceso instantáneo a información
relevante permite a sus empleados tomar decisiones mejores y más relevantes de
manera más rápida.
DEBILIDADES
Algunas cosas son difíciles de hacer.
Varios proveedores para aplicar diferentes idiomas.
En sentido a DLL y DML no tiene un procedimiento de lenguaje estándar.
COMPARATIVOS CON SMBD
SOPORTE DEL SISTEMA OPERATIVO
Windows
Mac OS X
Linux
BSD
Unix
z/OS
Adaptive Server Enterprise
Sí
Sí
Sí
Sí
Sí
No
ANTs Data Server
Sí
Sí
Sí
Sí
Sí
?
DB2
Sí
No
Sí
No
Sí
Sí
Firebird
Sí
Sí
Sí
Sí
Sí
Quizá
HSQLDB
Sí
Sí
Sí
Sí
Sí
Sí
Informix
Sí
Sí
Sí
Sí
Sí
No
Ingres
Sí
?
Sí
?
Sí
Quizá
InterBase
Sí
No
Sí
No
Sí
No
SapDB
Sí
No
Sí
No
Sí
?
MaxDB
Sí
No
Sí
No
Sí
?
Microsoft SQL Server
Sí
No
No
No
No
No
MySQL
Sí
Sí
Sí
Sí
Sí
Quizá
Oracle
Sí
Sí
Sí
Sí
Sí
Sí
PostgreSQL
Sí
Sí
Sí
Sí
Sí
No
SmallSQL
Sí
Sí
Sí
Sí
Sí
Sí
SQLite
Sí
Sí
Sí
Sí
Sí
Quizá
CARACTERISTICAS FUNDAMENTALES
ACID
Integridad referencial
Transacciones
Unicode
Adaptive Server Enterprise
Sí
Sí
Sí
Sí
ANTs Data Server
Sí
Sí
Sí
Sí
DB2
Sí
Sí
Sí
Sí
Firebird
Sí
Sí
Sí
Sí
HSQLDB
Sí
Sí
Sí
Sí
Informix
Sí
Sí
Sí
Sí
Ingres
Sí
Sí
Sí
Sí
InterBase
Sí
Sí
Sí
Sí
SapDB
Sí
Sí
Sí
Sí
MaxDB
Sí
Sí
Sí
Sí
Microsoft SQL Server
Sí
Sí
Sí
Sí
MySQL
Depende
Depende
Depende
Sí
Oracle
Sí
Sí
Sí
Sí
PostgreSQL
Sí
Sí
Sí
Sí
SQLite
Sí
No
Básico
Sí
TABLAS Y VISTAS
Tabla temporal
Vista materializada
Adaptive Server Enterprise
Sí
Sí
ANTs Data Server
Sí
Sí
DB2
Sí
Sí
Firebird
Sí
No
HSQLDB
Sí
No
Informix
Sí
Sí
Ingres
Sí
No
InterBase
Sí
No
SapDB
Sí
No
MaxDB
Sí
No
Microsoft SQL Server
Sí
Similar 6
MySQL
Sí
No
Oracle
Sí
Sí
PostgreSQL
Sí
No 4
SQLite
Sí
No
INDICES
Árbol R-/R+
Hash
Expresión
Parcial
Reversa
Mapa de bits
Adaptive Server Enterprise
No
No
Sí
No
Sí
No
ANTs Data Server
Sí
Sí
Sí
Sí
Sí
Sí
DB2
No
?
No
No
Sí
Sí
Firebird
No
No
No
No
No
No
HSQLDB
?
?
?
?
?
?
Informix
Sí
Sí
Sí
No
No
No
Ingres
Sí
Sí
No
No
No
No
InterBase
?
?
No
No
No
No
SapDB
?
?
No
No
No
No
MaxDB
?
?
No
No
No
No
Microsoft SQL Server
?
?
No
No
No
No
MySQL
Tablas MyISAM solamente
Tablas HEAP solamente
No
No
No
No
Oracle
Edición EE solamente
?
Sí
No
Sí
Sí
PostgreSQL
Sí
Sí
Sí
Sí
No
No
SQLite
No
No
No
No
No
No
OTROS OBJETOS
Dominio
Cursor
Trigger
Función
Procedimiento
Rutina externa
Adaptive Server
Enterprise
Sí
Sí
Sí
Sí
Sí
Sí
ANTs Data Server
Sí
Sí
Sí
Sí
Sí
Sí
DB2
No
Sí
Sí
Sí
Sí
Sí
Firebird
Sí
Sí
Sí
Sí
Sí
Sí
HSQLDB
?
No
Sí
Sí
Sí
Sí
Informix
?
Sí
Sí
Sí
Sí
Sí
Ingres
Sí
Sí
Sí
Sí
Sí
?
InterBase
Sí
Sí
Sí
Sí
Sí
Sí
SapDB
Sí
Sí
Sí
Sí
Sí
?
MaxDB
Sí
Sí
Sí
Sí
Sí
?
Microsoft SQL Server
No
Sí
Sí
Sí
Sí
Sí
MySQL
No
Sí
Sí
Sí
Sí
Sí
Oracle
Sí
Sí
Sí
Sí
Sí
Sí
PostgreSQL
Sí
Sí
Sí
Sí
Sí
Sí
SQLite
No
No
Sí
No
No
Sí
http://www.microsoft.com/latam/sqlserver/microsoft-oracle.aspx
COSTOS DE SQL SERVER
http://www.microsoft.com/sqlserver/2008/en/us/pricing.aspx
TUTORIALES Y/O DEMOS
http://technet.microsoft.com/es-es/library/bb500433.aspx
CONCLUSIONES
SQL Server 2008 aporta la tecnología y las funcionalidades que
las organizaciones necesitan. Con avances muy notables en
las áreas de plataforma de misión crítica, desarrollo dinámico,
uso de tipos de datos no relacionales y análisis de los datos de
negocio, los beneficios que ofrece SQL Server 2008 son muy
importantes para toda clase de empresas.
BIBLIOGRAFÍA
www.microsoft.com/spain/empresas/business/products/sql/evaluate.mspx
www.microsoft.com/latam/sqlserver/microsoft-oracle.aspx
http://geeks.ms/blogs/ozonicco/archive/2007/07/22/debilidades-del-sql-en-elprocesamiento-de-bases-de-datos.aspx
http://www.microsoft.com/mexico/sql/2008/info_nuevas_carct.aspx
http://cs1.mcm.edu/~rob/class/dbms/notes/Chapt05/Chapter5.html
http://www.microsoft.com/sqlserver/2008/en/us/pricing.aspx
http://es.wikipedia.org/wiki/Anexo:Comparaci%C3%B3n_de_sistemas_administrado
res_de_bases_de_datos_relacionales
DLL es la sigla de Dynamic Link Library o Dynamic-Link Library (Bibliotecas de Enlace
Dinámico), término con el que se refiere a los archivos con código ejecutable que se cargan
bajo demanda del programa por parte del sistema operativo. Esta denominación se refiere a
los sistemas operativos Windows siendo la extensión con la que se identifican los ficheros,
aunque el concepto existe en prácticamente todos los sistemas operativos modernos.
Lenguaje de Manipulación de Datos (Data Manipulation Language (DML) es un lenguaje
proporcionado por el sistema de gestión de base de datos que permite a los usuarios de la
misma llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el
modelo de datos adecuado.
El lenguaje de manipulación de datos más popular hoy día es SQL, usado para recuperar y
manipular datos en una base de datos relacional. Otros ejemplos de DML son los usados por
bases de datos IMS/DL1, CODASYL u otras.