Programar aplicaciones de bases de datos sin sentencias SQL

Artículos de interés para la comunidad de Velneo 6x
Avatar de Usuario
velneo
vAdmin
vAdmin
Mensajes: 245
Registrado: 09 Sep 2005, 08:55

Programar aplicaciones de bases de datos sin sentencias SQL

Mensaje por velneo » 12 Abr 2012, 12:57

¿No usar sentencias SQL al programar mis aplicaciones contra una base de datos?

La mayoría de las herramientas del mercado requieren el uso de sentencias SQL para atacar bases de datos y realizar consultas o modificar la información.

En los últimos años se ha trabajado en la búsqueda de alternativas que faciliten la labor de programación de acceso a la información, como ejemplo pongo a continuación un extracto sacado de una página de MSDN del proyecto LINQ:

Consultas integradas en los lenguajes .NET

Después de dos décadas, la industria ha alcanzado un punto estable en la evolución de las tecnologías de programación orientada a objetos. Los programadores ahora están familiarizados con conceptos como las clases, objetos y métodos. Analizando la generación de tecnologías actual y siguiente, se hace evidente que el siguiente gran reto para la tecnología de la programación es reducir la complejidad del acceso e integrar la información que no se define de manera nativa utilizando la tecnología orientada a objetos. Las dos fuentes de información no orientadas a objetos más comunes son las bases de datos relacionales y XML.

En vez de añadir características específicas para el tratamiento de datos relacionales o XML a nuestros lenguajes de programación y motor de ejecución, con el proyecto LINQ hemos seguido un enfoque más general, y estamos añadiendo a .NET Framework facilidades de consulta de propósito general aplicables a todas las fuentes de información, y no solo a los datos relacionales o XML. Esta facilidad se llama ‘Consultas integradas en los lenguajes’ (Language Integrated Query - LINQ).

En Velneo ahora y desde 1996 cuando vió la luz el proyecto "Velázquez Visual" los programadores han desarrollado aplicaciones empresariales sin necesidad de utilizar sentencias SQL.

La base de datos modelo real de Velneo en este sentido se comporta de forma diferente a las bases de datos relacionales ya que todos los enlaces que se definen en la estructura de la base de datos entre las tablas tienen las siguientes características:

Son permanentes
Sólo se definen una vez
Permiten el acceso a todas las tablas enlazadas.
Dispone de enlaces en todas las direcciones:
A maestros: Enlace a tabla maestra.
A históricos: Singular de plural por índice, singular de plural por posición.
A registros de la propia tabla: Enlace a si misma, enlace a registros contiguos.
A cualquier tabla: Resolviendo cualquiera de sus índices de clave única.
A continuación podemos ver como tras una definición de estructura de base de datos, acceder a la información resulta sencillo, intuitivo y rápido. Sin escribir código, visualmente. En la siguientes imágenes vemos a la izquierda el esquema de tablas de una aplicación de facturación y a la derecha como visualmente un programador selecciona el nombre del país, de la marca, del artículo de la línea de una factura, es decir, atrapa el valor de un campo correspondiente a una tabla que esta a nivel de enlaces a 3 maestros o lecturas de distancia, en este caso ya que Velneo no pone límites al número de niveles.

Cuando se gestionan datos en los procesos, el programador dispone de sentencias especializadas que no requieren el uso de sentencias SQL y que facilitan la programación. En las siguientes imágenes podemos observar como el editor de procesos en función de si la instrucción tiene origen ficha de tabla o lista de tabla permite seleccionar funciones especificas asistiendo al programador en todo momento y evitando errores.

Con esto no quiero indicar que SQL no tenga ventajas, al contrario, tiene y muchas, tal vez el problema haya sido la evolución de su implentación en los lenguajes de programación que durante mucho tiempo ha seguido requiriendo el uso de las sentencias WHERE y un mayor esfuerzo por parte del programador.

Cuando conoces Velneo por primera vez y estás acostumbrado al uso de SQL te puede resultar extraño no tener que crear ninguna sentencia para programar el acceso a la información, pero es fácil acostumbrarse a Velneo y sus ventajas.

Responder