martes, 30 de junio de 2015

SQL Creación y borrado de vistas

Como hemos observado, la arquitectura ANSI/SPARC distingue tres niveles, que se describen en el esquema conceptual, el esquema interno y los esquemas externos.
Hasta ahora, mientras creábamos las tablas de la base de datos, íbamos describiendo el esquema conceptual. Para describir los diferentes esquemas externos utilizamos el concepto de vista del SQL.
Para crear una vista es necesario utilizar la sentencia CREATE VIEW. Veamos su formato:

Lo primero que tenemos que hacer para crear una vista es decidir qué nombre le queremos poner (nombre_vista). Si queremos cambiar el nombre de las columnas, o bien poner nombre a alguna que en principio no tenía, lo podemos hacer en lista_columnas. Y ya sólo nos quedará definir la consulta que formará nuestra vista.
Las vistas no existen realmente como un conjunto de valores almacenados en la base de datos, sino que son tablas ficticias, denominadas derivadas (no materializadas). Se construyen a partir de tablas reales (materializadas) almacenadas en la base de datos, y conocidas con el nombre de tablas básicas (o tablas de base). La no-existencia real de las vistas hace que puedan ser actualizables o no.

lunes, 29 de junio de 2015

SQL Modificación y borrado de tablas (III)

En este caso tenemos que:
• Si utilizamos la opción RESTRICT, la tabla no se borrará si está referenciada, por ejemplo, por alguna vista.
• Si usamos la opción CASCADE, todo lo que referencie a la tabla se borrará con ésta

domingo, 28 de junio de 2015

SQL Modificación y borrado de tablas (II)

Si queremos modificar una tabla es que queremos realizar una de las siguientes operaciones:
1) Añadirle una columna (ADD columna).
2) Modificar las definiciones por defecto de la columna (ALTER columna).
3) Borrar la columna (DROP columna).
4) Añadir alguna nueva restricción de tabla (ADD restricción).
5) Borrar alguna restricción de tabla (DROPCONSTRAINT restricción).
Para borrar una tabla es preciso utilizar la sentencia DROP TABLE:

DROP TABLE nombre_tabla {RESTRICT|CASCADE};

sábado, 27 de junio de 2015

SQL Modificación y borrado de tablas (I)

Para modificar una tabla es preciso utilizar la sentencia ALTER TABLE. Veamos su formato:



viernes, 26 de junio de 2015

SQL - Aserciones Borrar una aserción en BDUOC

Por ejemplo, para borrar la aserción restriccion1, utilizaríamos la sentencia DROP ASSERTION de la forma siguiente:

DROP ASSERTION restriccion1;

jueves, 25 de junio de 2015

SQL - Aserciones Crear una aserción en BDUOC


Creamos una aserción sobre la base de datos BDUOC que nos asegure que no hay ningún empleado con un sueldo superior a 80.000 asignado al proyecto SALSA:

miércoles, 24 de junio de 2015

SQL - Aserciones

Una aserción es una restricción general que hace referencia a una o más columnas de más de una tabla. Para definir una aserción se utiliza la sentencia CREATE ASSERTION, y tiene el siguiente formato:
CREATE ASSERTION nombre_aserción CHECK (condiciones);

martes, 23 de junio de 2015

SQL Modificación y borrado de claves primarias con claves foráneas que hacen referencia a éstas (II)

Donde una de las restricciones de tabla era la definición de claves foráneas, que tiene el siguiente formato:
Donde NO ACTION corresponde a la política de restricción; CASCADE, a la actualización en cascada, y SET NULL sería la anulación. SET DEFAULT se podría considerar una variante de SET NULL, donde en lugar de valores nulos se puede poner el valor especificado por defecto.

lunes, 15 de junio de 2015

Lenguaje de marcado de hipertexto 5

El lenguaje de marcado de hipertexto es el lenguaje más utilizado para la elaboración de aplicaciones Web. En el trabajo de fin de grado, presentado por Josep Mir el año 2012 con el título “Estudio de los futuros estándares HTML5 y CSS3”, se menciona que el lenguaje de marcado de hipertexto se utiliza para mostrar texto, acompañado de otros elementos como imágenes o tablas, a través de internet. Para visualizar estas páginas e interactuar con ellas el usuario necesita utilizar un “navegador Web”, programa informático que interpreta el lenguaje de marcado de hipertexto y lo visualiza en la interfaz del dispositivo. El lenguaje de marcado de hipertexto es un lenguaje de texto, el cual se puede crear y editar con cualquier editor de texto que se tenga a disposición, como por ejemplo notepad, gedit y otros. También existen editores específicos para el lenguaje de marcado de hipertexto más completo y con más herramientas para este lenguaje, es el caso de DreamWeaver de Adobe, WebStorm de Jetbrains, WebMatrix de Microsoft y otros más. Es un lenguaje bastante sencillo que toma como base el uso de etiquetas para definir a cada elemento del documento.

En el mundo de las aplicaciones Web, en estos últimos años se han venido generando una gran cantidad de aplicaciones para dispositivos móviles, con la premisa de llegar al público de destino independientemente del dispositivo que usen. En la investigación de Wang, publicada el año 2014 bajo el titulo “Ventajas y desventajas de las herramientas HTML5 de desarrollo de aplicaciones móviles Android multiplataforma en dispositivos basados en procesadores Intel”, se menciona que en lugar de usar tecnologías complejas es mucho más fácil y eficaz utilizar herramientas de desarrollo como el lenguaje de marcado de hipertexto cinco para aplicaciones móviles multiplataforma. La clave es que la aplicación tenga las funcionalidades adecuadas para que la experiencia del usuario sea perfecta. En segundo lugar, la aplicación debe tener la capacidad intrínseca de funcionar en los nuevos dispositivos que se suman continuamente al mercado. El lenguaje de marcado de hipertexto cinco tiene varias funcionalidades que le permiten ejecutarse en dispositivos diseñados específicamente para que consuman menos electricidad. Por ejemplo, las laptops, los smartphones y las tabletas tienen procesadores que consumen considerablemente menos energía que los equipos de escritorio. Es el lenguaje de marcado preferido para estructurar y presentar contenido en la Internet.

Las principales ventajas de las herramientas de desarrollo de aplicaciones móviles multiplataforma son: (1) Escribir código lenguaje de marcado de hipertexto cinco es relativamente fácil de aprender y a eso se suma la facilidad de uso. Las empresas ahorran dinero si escriben aplicaciones que funcionan en todos los sistemas operativos en lugar de tener que modificarlas para cada uno. Además, se puede usar el código como referencia para proyectos basados exclusivamente en Android, Windows o iOS. (2) Permite desarrollar aplicaciones que se adaptan fácilmente a distintas resoluciones, tamaños de pantallas, relaciones de aspecto y orientaciones. (3) Permite potenciar las funcionalidades avanzadas, tales como el sistema de posicionamiento global, la cámara y el acelerómetro, en dispositivos modernos y brindar una experiencia de usuario adaptada al contexto en una amplia variedad de dispositivos, incluidos los smartphones y las tabletas electrónicas. (4) Las aplicaciones se pueden implementar como aplicaciones Web locales y también se pueden ver en los navegadores. (5) Las aplicaciones móviles pueden usar los mismos canales de monetización y distribución que las aplicaciones nativas. (6) JavaScript, el lenguaje de marcado de hipertexto cinco y las hojas de estilo en cascada, son la columna vertebral de la Internet y las aplicaciones Web; por lo tanto, la migración de herramientas de desarrollo a dispositivos móviles es más sencilla. (10) Escribir una única vez código de integración permite a las aplicaciones móviles funcionar de manera similar en todas las plataformas, independientemente del dispositivo.

Las desventajas fundamentales son las siguientes: (1) Siempre que se produce un cambio o se agrega una característica en iOS, Android, o Windows, la herramienta de desarrollo tiene que reflejar o tener en cuenta el cambio y hacer los ajustes necesarios en el código. Esto significa que las herramientas de desarrollo de aplicaciones móviles multiplataforma siempre irán detrás de los cambios oficiales. (2) A veces, lleva tiempo tener listas las aplicaciones móviles debido a que los desarrolladores tienen que escribir código para cada plataforma. (3) Los desarrolladores trabajan en lenguajes que no son nativos para las plataformas; por eso, la eficacia del código depende del motor de traducción. Sucede a menudo que las técnicas de codificación son ineficientes o que el código es redundante. (4) La diferencia de tiempos de ejecución de las plataformas a menudo causa complicaciones en el desarrollo de aplicaciones móviles multiplataforma. (5) El estándar “lenguaje de marcado de hipertexto cinco” evolucionó en un período relativamente corto y ello produjo discrepancias en la implementación de atributos hoja de estilo en cascada, etiquetas del lenguaje de marcado y la interfaz de programación de aplicaciones de JavaScript. A veces, estas características se comportan de manera diferente en plataformas distintas. Sin embargo, hay herramientas disponibles para resolver estas discrepancias.

lunes, 8 de junio de 2015

Lenguaje de marcado de hipertexto 5

En el curso completo del lenguaje de marcado de hipertexto, publicado por Ferrer y sus colegas el año 2011, se menciona que World Wide Web o Web, es un sistema que contiene una cantidad de información casi infinita. Pero esta información debe estar ordenada de alguna forma de manera que sea posible encontrar lo que se busca. La unidad básica donde está almacenada esta información son las páginas Web. Estas páginas se caracterizan por contener texto, imágenes, animaciones e incluso sonido y video. Una de las características más importantes de las páginas Web es que son de tipo hipertexto. Esto quiere decir que las páginas no son elementos aislados, sino que están unidas unas a otras mediante los vínculos o enlaces hipertexto. Gracias a estos enlaces el navegante de Internet puede pulsar sobre un texto activo de una página para navegar hasta otra página. Será cuestión del programador de la página inicial decidir que palabras o frases serán activas y a donde conducirá pulsar sobre ellas. En algunos ambientes se discute que la Web ya no es un sistema hipertexto sino hipermedia. Los que defienden el cambio se apoyan en que aunque en sus orígenes la Web constaba únicamente de texto, en la actualidad es un sistema principalmente gráfico y se puede hacer que las zonas activas sean, no sólo texto, sino imágenes, videos, botones, en definitiva cualquier elemento de una página. Cuando los diseñadores de la Web se hicieron esta pregunta decidieron que se debían cumplir, entre otras, las siguientes características: (1) La Web tenía que ser distribuida, es decir que la información debía estar repartida en páginas no muy grandes y enlazadas entre sí. (2) La Web tenía que ser hipertexto y debía ser fácil navegar por ella. (3) Tenía que ser compatible con todo tipo de computadoras y con todo tipo de sistemas operativos. (4) Debía ser dinámico, es decir que el proceso de cambiar y actualizar la información debía ser ágil y rápido.

En el libro publicado el año 2011 con el título “El gran libro de HTML5, CSS3 y Javascript”, Gauchat menciona que el lenguaje de marcado de hipertexto cinco, no es una nueva versión del antiguo lenguaje de etiquetas, ni siquiera una mejora de esta ya antigua tecnología, sino un nuevo concepto para la construcción de aplicaciones Web en una era que combina dispositivos móviles, computación en la nube y trabajos en red. Todo comenzó mucho tiempo atrás con una simple versión del lenguaje de marcado de hipertexto para crear la estructura básica de páginas Web, organizar su contenido y compartir información. El lenguaje y la Web misma nacieron principalmente con la intención de comunicar información por medio de texto. El limitado objetivo del lenguaje de marcado de hipertexto motivó a varias compañías a desarrollar nuevos lenguajes y programas para agregar características a la Web nunca antes implementadas. Este impulso inicial creció hasta convertirse en un popular y poderoso accesorio. Juegos simples juegos y bromas animadas pronto se transformaron en sofisticadas aplicaciones, ofreciendo nuevas experiencias que cambiaron el concepto de la Web para siempre.

El lenguaje de marcado de hipertexto es el lenguaje para describir la estructura de las aplicaciones Web entre las cuales resaltan las denominadas páginas Web. Según Lowery y Fletcher, en el libro publicado el año 2011 titulado “Entrenamiento de 24 horas con el lenguaje de marcado de hipertexto 5”, se menciona que “hipertexto” es cualquier texto presentado en un dispositivo electrónico, sea este una computadora, teléfono inteligente, tableta, o algún otro dispositivo capaz de entender este tipo de contenido, en el cual el texto mencionado tiene un hipervínculo con otro texto que puede estar en la misma página Web, en otra del mismo sitio, o en una completamente diferente. El hipertexto es tal vez lo que define la esencia de Internet, la habilidad de vincular una página Web con otra, creando así una telaraña de información. Mientras que el “lenguaje de marcado” toma este texto plano y con la ayuda de códigos adicionales o etiquetas, lo convierte en un texto de fácil lectura, al cambiar el estilo de la presentación, e incluso introducir características multimedia en las aplicaciones Web.

El Consorcio de la World Wide Web, es la organización responsable de la creación de las especificaciones para el lenguaje de marcado de hipertexto. Este Consorcio ha estado activo desde el comienzo mismo de la Web. Este organismo de normalización ha desarrollado varias versiones del lenguaje de marcado de hipertexto con el paso de los años. En palabras de Hogan, en el libro publicado el año 2010 titulado “HTML5 y CSS3: Desarrolle hoy con los estándares del mañana”, la última versión en alcanzar la etapa final de la recomendación fue el lenguaje de marcado de hipertexto versión 4.01 en el año 1999, conocida básicamente como lenguaje de marcado de hipertexto. De allí la versión más reciente, lenguaje de marcado de hipertexto cinco intenta brindar un soporte más sólido a los entornos multimedia de la Web actuales, mientras guarda su compatibilidad con versiones anteriores. Aunque el lenguaje de marcado de hipertexto, continua desarrollándose y en cambio constante, es posible asegurar que gran parte de sus etiquetas pueden ser utilizadas con seguridad en las aplicaciones Web contemporáneas.