Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PersonalSoft S.A.S
www.personalsoft.com
Agenda
Conjuntos
Operaciones entre conjuntos
Pensar en conjuntos
Data Centric Programming
Programación Tradicional
SQL
Objetos nativos (DDS) y objetos SQL
Interoperabilidad DDS y SQL
www.personalsoft.com
Reglas de juego
www.personalsoft.com
Conjuntos
www.personalsoft.com
Ejemplos de conjuntos
www.personalsoft.com
Operaciones
Intersección
Unión
Complemento (Diferencia)
www.personalsoft.com
Operaciones
www.personalsoft.com
Pensando en conjuntos
Result set# 1
Result set # 3
www.personalsoft.com
Data Centric Programming
Aprender
Des-aprender
Ciencia
Arte
www.personalsoft.com
Importancia del modelo
Un adecuado
modelamiento permite
buenas definiciones de
conjuntos de datos.
Esto a la vez permite
un buen uso del
lenguaje SQL.
www.personalsoft.com
SQL Introducción
Structured Query Language
Declarativo, no procedimental
Pensamos en conjuntos y definimos
operaciones sobre dichos conjuntos.
El conjunto de instrucciones para definir
datos se conoce como DDL.
El conjunto de instrucciones para
manipular los datos se conoce como
DML.
www.personalsoft.com
SQL Introducción
Structured Query Language
Desarrollado por IBM en la mitad de la década de los
70s
Estandarizado, independiente de la plataforma. Es un
lenguaje pensado para instanciar, procesar y manejar
bases de datos relacionales, objetos y datos.
Basado en el idioma inglés
Últimos estándares:
• ISO 2011
• ANSI 2011
Diseñado para procesamiento basado en conjuntos.
www.personalsoft.com
Porqué SQL?
Por qué utilizar SQL
Mayor productividad del programador
o SQL es un lenguaje más natural e intuitivo
o Es posible realizar las pruebas de manera
independiente de la demás lógica de la aplicación
Estándar de la industria
o Mayor portabilidad entre plataformas
Más fácil encontrar programadores
o El conocimiento/habilidades es más transferible a
otras plataformas
Mayor información disponible por ser un estándar de
la industria.
www.personalsoft.com
SQL en DB2 for i
Por qué utilizar SQL en DB2 for i?
Está integrada con el sistema
o El sistema operativo incluye todo el soporte para
trabajar
DB2 cumple altamente con los estándares definidos
Muchas mejoras del sistema están disponibles sólo para
SQL.
El sistema IBM i y la base de datos DB2 están muy
optimizados el uno con respecto al otro
Para operaciones de datos tiene mejor performance que HLL
Más detalles…
o Lectura White Paper: “Benefits of Modernizing with
www.personalsoft.com
SQL”.
Conjuntos y SQL
Sucursales Ubicaciones
Preguntas:
Número de sucursales por ubicación
Lista de sucursales en una ubicación
www.personalsoft.com
Conjuntos y SQL
Intersección
Sucursales Ubicaciones
Preguntas:
Número de sucursales por ubicación
Lista de sucursales en una ubicación
Existe una sucursal en determinada ubicación?
www.personalsoft.com
Conjuntos y SQL
Sucursales Ubicaciones
SQL
o Le decimos a la BD qué hacer PERO no
le decimos cómo hacerlo.
www.personalsoft.com
Record Level Access
Resultados
Programa HLL
DB2
T1 T2 T3 T4
www.personalsoft.com
Data Centric Programming - SQL
Programa
HLL/Interface
Resultados
DB2
T1 T2 T3 T4
www.personalsoft.com
Record Level Access con SQL
DECLARE CURSOR
OPEN CURSOR
FETCH from cursor
DOW SQLCOD = 0
Lógica adicional…
ENDDO
CLOSE CURSOR
www.personalsoft.com
Jerarquía de objetos IBM i
www.personalsoft.com
Interoperabilidad SQL/DDS
www.personalsoft.com
Interoperabilidad SQL/DDS
La recomendación
de IBM es no crear
más objetos
mediante DDS,
sino utilizando
SQL.
www.personalsoft.com
Conclusiones
La programación centrada en
los datos permite que el
DBMS haga más trabajo por
nosotros.
SQL es la manera más
poderosa de hacer esto.
SQL es el lenguaje de base
de datos que nos permite
definir y comunicar los
requerimientos de negocio.
www.personalsoft.com
Preguntas y Respuestas
www.personalsoft.com
www.personalsoft.com