sábado, 27 de mayo de 2017

ADO.NET.


mi pagina https://es.slideshare.net/SILVA19_PAMELA/laboratorio-de-programacin-i-76411766

“AÑO INTERNACIONAL DEL TURISMO  SOSTENIBLE PARA EL DESARROLLO”

TEMA: ADO.NET.

CURSO: LABORATORIO DE PROGRAMACIÓN I

ESPECIALIDAD: INGENIERIA DE SISTEMAS Y TELEMATICA.

NOMBRE: GILDA  PAMELA

APELLIDO: SILVA  FLORES

DOCENTE: MARCO AURELIO  PORRO  CHULLI

CILCO: IV – A                                   AULA: 501

BAGUA GRANDE– PERÚ
2017

1._CONTENIDO
·         DEFINICIÓN
ADO.NET es un conjunto de componentes del software que pueden ser usados por los programadores para acceder a datos y a servicios de datos. Es una parte de la biblioteca de clases base que están incluidas en el Microsoft .NET Framework. Es comúnmente usado por los programadores para acceder y para modificar los datos almacenados en un Sistema Gestor de Bases de Datos Relacionales, aunque también puede ser usado para acceder a datos en fuentes no relacionales. ADO.NET es a veces considerado como una evolución de la tecnología ActiveX Data Object (ADO), pero fue cambiado tan extensivamente que puede ser concebido como un producto enteramente nuevo.

·         ARQUITECTURA

ADO.NET consiste en dos partes primarias:
Data provider
Estas clases proporcionan el acceso a una fuente de datos, como Microsoft SQL Server y Oracle. Cada fuente de datos tiene su propio conjunto de objetos del proveedor, pero cada uno tienen un conjunto común de clases de utilidad:

*      Connection: Proporciona una conexión usada para comunicarse con la fuente de datos. También actúa como Abstract Factory para los objetos command.
*      Command: Usado para realizar alguna acción en la fuente de datos, como lectura, actualización, o borrado de datos relacionales.

*      Parameter: Describe un simple parámetro para un command. Un ejemplo común es un parámetro para ser usado en un procedimiento almacenado.
*      DataAdapter: "Puente" utilizado para transferir data entre una fuente de datos y un objeto DataSet (ver abajo).

*      DataReader: Es una clase usada para procesar eficientemente una lista grande de resultados, un registro a la vez.
  •          DataSets
Los objetos DataSets, son un grupo de clases que describen una simple base de datos relacional en memoria, fueron la estrella del show en el lanzamiento inicial (1.0) del Microsoft .NET Framework. Las clases forman una jerarquía de contención:
  •      Un objeto DataSet representa un esquema (o una base de datos entera o un subconjunto de una). Puede contener las tablas y las relaciones entre esas tablas.

  •     Un objeto DataTable representa una sola tabla en la base de datos. Tiene un nombre, filas, y columnas.

  •       Un objeto DataView "se sienta sobre" un DataTable y ordena los datos (como una cláusula "order by" de SQL) y, si se activa un filtro, filtra los registros (como una cláusula "where" del SQL). Para facilitar estas operaciones se usa un índice en memoria. Todas las DataTables tienen un filtro por defecto, mientras que pueden ser definidos cualquier número de DataViews adicionales, reduciendo la interacción con la base de datos subyacente y mejorando así el desempeño.

  •     Un DataColumn representa una columna de la tabla, incluyendo su nombre y tipo.

  •    Un objeto DataRow representa una sola fila en la tabla, y permite leer y actualizar los valores en esa fila, así como la recuperación de cualquier fila que esté relacionada con ella a través de una relación de clave primaria - clave extranjera.

  •    Un DataRowView representa una sola fila de un DataView, la diferencia entre un DataRow y el DataRowView es importante cuando se está interactuando sobre un resultset.

  •    Un DataRelation es una relación entre las tablas, tales como una relación de clave primaria - clave ajena. Esto es útil para permitir la funcionalidad del DataRow de recuperar filas relacionadas.

  •    Un Constraint describe una propiedad de la base de datos que se debe cumplir, como que los valores en una columna de clave primaria deben ser únicos. A medida que los datos son modificados cualquier violación que se presente causará excepciones.

Un DataSet es llenado desde una base de datos por un DataAdapter cuyas propiedades Connection y Command que han sido iniciados. Sin embargo, un DataSet puede guardar su contenido a XML (opcionalmente con un esquema XSD), o llenarse a sí mismo desde un XML, haciendo esto excepcionalmente útil para los servicios web, computación distribuida, y aplicaciones ocasionalmente conectadas desconectados.

·         DATASET

El API de ADO .NET proporciona una superclase que encapsula lo que sería la base de datos a un nivel lógico: tablas, vistas, relaciones, su integridad, etc, pero siempre con independencia del tipo de fabricante que la diseñó. Aquí se tiene el mejor concepto de datos desconectados: una copia en el cliente de la arquitectura de la base de datos basada en un esquema XML que la independiza del fabricante, proporcionando al desarrollador la libertad de trabajo independiente de la plataforma. En la Figura 1 se puede ver un esquema de un DataSet.

 



                                                                        Figura 1

Esta clase se compone a su vez de subclases que representan cada una, los elementos la base de datos: Tablas, las columnas, las filas, sus reglas de comprobacion, sus relaciones, las vistas asociadas a la tabla, etc.

·         CLASES DE ADO.NET

·         System.Data: clases genéricas de datos de ADO .NET, integra la gran mayoría de clases que habilitan el acceso a los datos de la arquitectura .NET.
·     
    System.Data.SqlClient: clases del proveedor de datos de SQL Server, permiten el acceso a proveedores
     SQL Server en su versión 7.0 y superior.

·         System.Data.OleDb: clases del proveedor de datos de OleDB, permiten el acceso a
·         proveedores .NET que trabajan directamente contra controladores basados en los ActiveX de              Microsoft.

·         System.Data.SqlTypes: definición de los tipos de datos de SQL Server, proporciona la encapsulación en clases de todos los tipos de datos nativos de SQL Server y sus funciones de manejo de errores, ajuste y conversión de tipos, etc.

·         System.Data.Common: clases base, reutilizables de ADO .NET, proporcionan la colección de clases necesarias para acceder a una fuente de datos (como por ejemplo una Base de Datos).

·         System.Data.Internal: integra el conjunto de clases internas de las que se componen los proveedores de datos.

·         Dentro del espacio de nombres System.Data encontramos las clases compartidas que constituyen el eje central de ADO.NET, y son las siguientes:

·         DataSet: almacén de datos por excelencia en ADO .NET. Representa una base de datos desconectada del proveedor de datos. Almacena tablas y sus relaciones.

·         DataTable: un contenedor de datos. Estructurado como un conjunto de filas (DataRow) y columnas
·         (DataColumn).

·         DataRow: registro que almacena n valores. Representación en ADO .NET de una fila de una tabla de la base de datos.

·         DataColumn: contiene la definición de una columna. Metadatos y datos asociados a su dominio.
·         DataRelation: enlace entre dos o más columnas iguales de dos o más tablas.

·         Constraint: reglas de validación de las columnas de una tabla.

·         DataColumnMapping: vínculo lógico existente entre una columna de un objeto del DataSet y la columna física de la tabla de la base de datos.

·         DataTableMapping: vínculo lógico existente entre una tabla del DataSet y la tabla física de la base de datos.

·         Además de estas clases, existe otro grupo de clases, las clases específicas de un proveedor de datos.

     Estas clases forman parte de lo específico de un fabricante de proveedores de datos .NET. Tienen una sintaxis de la forma XxxClase donde "Xxx" es un prefijo que determina el tipo de plataforma de conexión a datos. Se definen en dos NameSpaces: System.Data.SqlClient y System.Data.OleDb.
·         En la siguiente tabla se ofrece una descripción de las clases que podemos encontrar en estos espacios de nombres.

·  Clase Descripción SqlConnection Clase que representa la etapa de conexión a un proveedor OleDbConnection de datos. Encapsula la seguridad, pooling de conexiones,
·         etc.

·         SqlCommand Clases que representan un comando SQL contra un
·         OleDbCommand sistema gestor de datos.

·         SqlCommandBuilder Generador de comandos SQL de inserción, modificación y
·         OleDbCommandBuilder borrado desde una consulta SQL de selección de datos.

·         SqlDataReader Un lector de datos de sólo avance, conectado a la base de
·         OleDbDataReader datos.

·    SqlDataAdapter
    Clase adaptadora entre un objeto DataSet y sus OleDbDataAdapter operaciones físicas en la base de datos (select,insert,update y delete).

·       SqlParameter 
     Define los parámetros empleados en la llamada a  OleDbParameter procedimientos almacenados.

·         SqlTransaction 
     Gestión de las transacciones a realizar en la base de datos.

      OleDbTransaction
·        

   Para aquellos conocedores de ADO en alguna de sus versiones anteriores podemos hacer una analogía o comparación entre las antiguas clases de ADO y las nuevas de ADO .NET, en la Figura 3 se puede ver esta aproximación.






                                                 Figura 3

·         EJEMPLOS
Los listados de código de este tema muestran cómo recuperar datos de una base de datos utilizando las tecnologías ADO.NET siguientes:

  • ü   Proveedores de datos ADO.NET:
SqlClient (System.Data.SqlClient)
OleDb (System.Data.OleDb)
Odbc (System.Data.Odbc)
OracleClient (System.Data.OracleClient)

  • ü  ADO.NET Entity Framework:
LINQ to Entities
ObjectQuery con tipo
EntityClient (System.Data.EntityClient)
LINQ to SQL

Ejemplos del proveedor de datos ADO.NET
En los listados de código siguientes se muestra cómo recuperar datos de una base de datos usando proveedores de datos ADO.NET. Los datos se devuelven en DataReader. Para obtener más información, consulte recuperar datos mediante DataReader.

SqlClient

En el código de este ejemplo se supone que puede conectarse a la base de datos de ejemplo Northwind en Microsoft SQL Server. El código crea un SqlCommand para seleccionar las filas de la tabla Products, agregar un SqlParameter para restringir los resultados a las filas con un UnitPrice mayor que el valor de parámetro especificado, en este caso 5. El SqlConnection se abre dentro de un using bloque, lo que garantiza que los recursos se cierran y se eliminan cuando el código sale. El código ejecuta el comando mediante una SqlDataReadery muestra los resultados en la ventana de consola.
[DataWorks,SampleApp.SqlClient#1](../CodeSnippet/VS_Snippets_ADO.NET/DataWorks SampleApp.SqlClient#1)]

OleDb

En el código de este ejemplo se asume que puede conectarse a la base de datos de ejemplo Northwind de Microsoft Access. El código crea un OleDbCommand para seleccionar las filas de la tabla Products, agregar un OleDbParameter para restringir los resultados a las filas con un UnitPrice mayor que el valor de parámetro especificado, en este caso 5. El OleDbConnection se abre dentro de un using bloque, lo que garantiza que los recursos se cierran y se eliminan cuando el código sale. El código ejecuta el comando mediante una OleDbDataReadery muestra los resultados en la ventana de consola.
[DataWorks SampleApp.OleDb#1](../CodeSnippet/VS_Snippets_ADO.NET/DataWorks SampleApp.OleDb#1)]

Odbc

En el código de este ejemplo se asume que puede conectarse a la base de datos de ejemplo Northwind de Microsoft Access. El código crea un OdbcCommand para seleccionar las filas de la tabla Products, agregar un OdbcParameter para restringir los resultados a las filas con un UnitPrice mayor que el valor de parámetro especificado, en este caso 5. El OdbcConnection se abre dentro de un using bloque, lo que garantiza que los recursos se cierran y se eliminan cuando el código sale. La ejecuta el comando mediante una OdbcDataReadery muestra los resultados en la ventana de consola.

OracleClient

En el código de este ejemplo se presupone una conexión a DEMO.CUSTOMER en un servidor Oracle. También debe agregarse una referencia a System.Data.OracleClient.dll. El código devuelve los datos en un OracleDataReader.
[DataWorks SampleApp.Oracle#1](../CodeSnippet/VS_Snippets_ADO.NET/DataWorks SampleApp.Oracle#1)]

Ejemplos de Entity Framework

En los listados de código siguientes se muestra cómo recuperar los datos de un origen de datos consultando las entidades de un Entity Data Model (EDM). Estos ejemplos utilizan la modelo de Northwind. Para obtener más información, consulte Introducción a Entity Framework.
LINQ to Entities

El código de este ejemplo usa una consulta LINQ para devolver los datos como objetos Categories, que se proyectan como un tipo anónimo que contiene solo las propiedades CategoryID y CategoryName. Para obtener más información, consulte LINQ to Entities información general sobre.


ObjectQuery con establecimiento de tipos


El código de este ejemplo utiliza un ObjectQuery  para devolver datos como objetos Categories. Para obtener más información, consulte consultas de objeto.
EntityClient

El código de este ejemplo utiliza un 
EntityCommand para ejecutar una consulta de Entity SQL. Esta consulta devuelve una lista de registros que representan instancias del tipo de entidad Categories. Un EntityDataReader se utiliza para tener acceso a registros de datos en el conjunto de resultados. Para obtener más información, consulte proveedor de EntityClient para Entity Framework.
LINQ to SQL
El código de este ejemplo usa una consulta LINQ para devolver los datos como objetos Categories, que se proyectan como un tipo anónimo que contiene solo las propiedades CategoryID y CategoryName. Este ejemplo se basa en el contexto de datos Northwind. Para obtener más información, consulte Introducción.

 





































domingo, 21 de mayo de 2017

GESTOR DE BASES DE DATOS


slideshare mi pagina de diapositiva
https://es.slideshare.net/SILVA19_PAMELA/gestor-de-bases-de-datos

 
 “AÑO INTERNACIONAL DEL TURISMO  SOSTENIBLE PARA EL DESARROLLO”

TEMA:GESTOR DE BASES DE DATOS

CURSO: LABORATORIO DE PROGRAMACIÓN I

ESPECIALIDAD: INGENIERÍA DE SISTEMAS Y TELEMATICA.

NOMBRE: GILDA  PAMELA

APELLIDO: SILVA  FLORES

DOCENTE: MARCO AURELIO  PORRO  CHULLI

CILCO: IV – A                                   AULA: 501

BAGUA GRANDE– PERÚ
2017

I._Tema: GESTOR DE BASES DE DATOS
     1._Contenido
·         DEFINICIÓN
Un sistema gestor de base de datos (SGBD) es un conjunto de programas que permiten el almacenamiento, modificación y extracción de la información en una base de datos, además de proporcionar herramientas para añadir, borrar, modificar y analizar los datos. Los usuarios pueden acceder a la información usando herramientas específicas de consulta y de generación de informes, o bien mediante aplicaciones al efecto.
Estos sistemas también proporcionan métodos para mantener la integridad de los datos, para administrar el acceso de usuarios a los datos y para recuperar la información si el sistema se corrompe. Permiten presentar la información de la base de datos en variados formatos. La mayoría incluyen un generador de informes. También pueden incluir un módulo gráfico que permita presentar la información con gráficos y tablas.
Generalmente se accede a los datos mediante lenguajes de consulta, lenguajes de alto nivel que simplifican la tarea de construir las aplicaciones. También simplifican las consultas y la presentación de la información. Un SGBD permite controlar el acceso a los datos, asegurar su integridad, gestionar el acceso concurrente a ellos, recuperar los datos tras un fallo del sistema y hacer copias de seguridad. Las bases de datos y los sistemas para su gestión son esenciales para cualquier área de negocio, y deben ser gestionados con esmero.




·         COMPONENTES
Los componentes de los sistemas gestores de bases de datos son los siguientes:
Lenguajes  SGBD

Lenguaje de definición de datos- DDL: te permite llevar a cabo las tareas de definición de las estructuras que almacenarán los datos, así como los métodos o funciones que permitan consultarlos.
Lenguaje de manipulación de datos-DML: te permite consultar o manipular los datos, organizados por el modelo adecuado. El más popular es el SQL. Se clasifican en:
Procedurales: se le da instrucciones al sistema para que elabore unos procedimientos en la base de datos para calcular un resultado final.
No Procedurales: se detalla la información sin un método específico para obtener información.
Lenguajes de cuarta generación: son lenguajes de programación diseñados con el objetivo de desarrollar aplicaciones orientadas a las bases de datos
Lenguaje de control de datos: este tipo de lenguaje incluye una serie de comandos SQL que permiten al administrador controlar al acceso a los datos que tengan una base de datos.


·         LENGUAJE DE MODULACIÓN
Un lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los programadores de la misma llevar a cabo las tareas de definición de las estructuras que almacenarán los datos así como de los procedimientos o funciones que permitan consultarlos.
Un Data Definition Language o Lenguaje de descripción de datos (DDL) es un lenguaje de programación para definir estructuras de datos. El término DDL fue introducido por primera vez en relación con el modelo de base de datos CODASYL, donde el esquema de la base de datos ha sido escrito en un lenguaje de descripción de datos que describe los registros, los campos, y "conjuntos" que conforman el usuario modelo de datos. Más tarde fue usado para referirse a un subconjunto de SQL, pero ahora se utiliza en un sentido genérico para referirse a cualquier lenguaje formal para describir datos o estructuras de información, como los esquemas XML.
 







                                                                                                                                                                         
  •  Jerarquía

Una base de datos jerárquica es un tipo de sistema de gestión de bases de datos que, como su nombre indica, almacena la información en una estructura jerárquica que enlaza los registros en forma de estructura de árbol (similar a un árbol visto al revés), en donde un nodo padre de información puede tener varios nodos hijo, y así sucesivamente.
Esta relación jerárquica no es estrictamente obligatoria, de manera que pueden establecerse relaciones entre nodos hermanos, y en este caso, la estructura en forma de árbol se convierte en una estructura en forma de grafo dirigido (esta variante se denomina Bases de datos de red).


  •         Red

Esta estructura contiene relaciones más complejas que las jerárquicas. Admite relaciones de cada registro con varios que se pueden seguir por distintos caminos. En otras palabras, el modelo permite relaciones N:N.
El modelo en red está concebido como un modo flexible de representar objetos y sus relaciones. Su cualidad distintiva es que el esquema —visto como un conjunto de nodos conectados por arcos— no tiene ninguna restricción.
El inventor de este modelo fue Charles Bachman, y el estándar fue publicado en 1969 por CODASYL.




  •         Relacional

La estructura relacional es la más extendida hoy en día. Se usa en mainframes, computadoras medias y microcomputadoras. Almacena los datos en filas (tuplas) y columnas (atributos). Estas tablas pueden estar conectadas entre sí por claves comunes. Mientras trabajaba en IBM en 1972, E. F. Codd concibió esta estructura. El modelo no resulta sencillo de consultar por el usuario ya que puede requerir una compleja combinación de tablas.


  •     Orientada a Objetos

La estructura orientada a objetos está diseñada siguiendo el paradigma de los lenguajes orientados a objetos. De este modo soporta los tipos de datos gráficos, imágenes, voz y texto de manera natural. Esta estructura tiene gran difusión en aplicaciones web para aplicaciones multimedia.
Antes de la implantación de los SGBD con estructura orientada a objetos, el almacenamiento de datos multimedia se basaba en el sistema de ficheros para organizar, almacenar y procesar los datos. El proceso de ficheros es engorroso, costoso e inflexible. La redundancia de los datos es un inconveniente del proceso de ficheros ya que los ficheros independientes producen ficheros duplicados con su implicación en el espacio necesario. Otro inconveniente es la falta de integración, y la dificultad de mantenimiento. Esto fue encaminado aplicando la orientación a objetos a los datos.
 
















·         SISTEMA DE GESTOR DE BASE DE DATOS

Sistema Gestor de Base de Datos. Un Sistema Gestor de Base de Datos (SGBD, en inglés DBMS: DataBase Management System) es un sistema de software que permite la definición de bases de datos; así como la elección de las estructuras de datos necesarios para el almacenamiento y búsqueda de los datos, ya sea de forma interactiva o a través de un lenguaje de programación. Un SGBD relacional es un modelo de datos que facilita a los usuarios describir los datos que serán almacenados en la base de datos junto con un grupo de operaciones para manejar los datos.

Los SGBD relacionales son una herramienta efectiva que permite a varios usuarios acceder a los datos al mismo tiempo. Brindan facilidades eficientes y un grupo de funciones con el objetivo de garantizar la confidencialidad, la calidad, la seguridad y la integridad de los datos que contienen, así como un acceso fácil y eficiente a los mismos.


  •         Postgre SQL

PostgreSQL es un Sistema Gestor de Bases de Datos Relacionales Orientadas a Objetos, derivado de Postgres, desarrollado en la Universidad de California, en el Departamento de Ciencias de la Computación de Berkeley. Es un gestor de bases de datos de código abierto, brinda un control de concurrencia multi-versión (MVCC por sus siglas en inglés) que permite trabajar con grandes volúmenes de datos; soporta gran parte de la sintaxis SQL y cuenta con un extenso grupo de enlaces con lenguajes de programación.
Posee características significativas del motor de datos, entre las que se pueden incluir las subconsultas, los valores por defecto, las restricciones a valores en los campos (constraints) y los disparadores (triggers). Ofrece funcionalidades en línea con el estándar SQL92, incluyendo claves primarias, identificadores entrecomillados, conversión de tipos y entrada de enteros binarios y hexadecimales.
El código fuente se encuentra disponible para todos sin costo alguno. Está disponible para 34 plataformas con la última versión estable.Es totalmente compatible con ACID
(acrónimo de Atomicity, Consistency, Isolation and Durability; en español: Atomicidad, Consistencia, Aislamiento y Durabilidad).
Posee una integridad referencial e interfaces nativas para lenguajes como ODBC, JDBC, C, C++, PHP, PERL, TCL, ECPG; PYTHON y RUBY. Funciona en todos los sistemas operativos Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), y Windows.
Debido a la liberación de la licencia, PostgreSQL se puede usar, modificar y distribuir de forma gratuita para cualquier fin, ya sea privado, comercial o académico.

  •         MySQL

MySQL es un sistema gestor de bases de datos relacionales rápido, sólido y flexible. Es idóneo para la creación de bases de datos con acceso desde páginas web dinámicas, así como para la creación de cualquier otra solución que implique el almacenamiento de datos, posibilitando realizar múltiples y rápidas consultas. Está desarrollado en C y C++, facilitando su integración en otras aplicaciones desarrolladas también en esos lenguajes.

Es un sistema cliente/servidor, por lo que permite trabajar como servidor multiusuario y de subprocesamiento múltiple, o sea, cada vez que se crea una conexión con el servidor, el programa servidor establece un proceso para manejar la solicitud del cliente, controlando así el acceso simultáneo de un gran número de usuarios a los datos y asegurando el acceso a usuarios autorizados solamente. Es uno de los sistemas gestores de bases de datos más utilizado en la actualidad, utilizado por grandes corporaciones como Yahoo! Finance, Google, Motorola, entre otras.

  •          Microsoft SQL Server

SQL Server es un sistema gestor de base de datos relacionales producido por Microsoft. Es un sistema cliente/servidor que funciona como una extensión natural del sistema operativo Windows. Entre otras características proporciona integridad de datos, optimización de consultas, control de concurrencia y backup y recuperación.

Es relativamente fácil de administrar a través de la utilización de un entorno gráfico para casi todas las tareas de sistema y administración de bases de datos. Utiliza servicios del sistema operativo Windows para ofrecer nuevas capacidades o ampliar la base de datos, tales como enviar y recibir mensajes y gestionar la seguridad de la conexión. Es fácil de usar y proporciona funciones de almacenamiento de datos que sólo estaban disponibles en Oracle y otros sistemas gestores de bases de datos más caros.

  • Informix

Informix es una familia de productos RDBMS de IBM, adquirida en 2001 a una compañía (también llamada Informix o Informix Software) cuyos orígenes se remontan a 1980.

El DBMS Informix fue concebido y diseñado por Roger Sippl a finales de los años 1970. La compañía Informix fue fundada en 1980, salió a bolsa en 1986 y durante parte de los años 1990 fue el segundo sistema de bases de datos más popular después de Oracle. Sin embargo, su éxito no duró mucho y para el año 2000 una serie de tropiezos en su gestión había debilitado seriamente a la compañía desde el punto de vista financiero.

En 2001 IBM, impulsada por una sugerencia de Wal-Mart (el mayor cliente de Informix) compró Informix. IBM tenía planes a largo plazo tanto para Informix como para DB2, compartiendo ambas bases de datos tecnología de la otra. A principios de 2005, IBM lanzó la versión 10 del Informix Dynamic Server (IDS).

  •     Oracle, etc

Oracle Database es un sistema de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo en inglés de Object-Relational Data Base Management System), desarrollado por Oracle Corporation.

Se considera a Oracle Database como uno de los sistemas de bases de datos más completos, destacando: soporte de transacciones, estabilidad, escalabilidad, y soporte multiplataforma.[cita requerida]

Su dominio en el mercado de servidores empresariales había sido casi total hasta que recientemente tiene la competencia del Microsoft SQL Server y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySQL o Firebird.

Las últimas versiones de Oracle han sido certificadas para poder trabajar bajo GNU/Linux.






·         RESUMEN
Un modelo de datos es un conjunto de conceptos que sirven para describir la estructura de una base de datos:
Los datos, las relaciones entre los datos y las restricciones que deben cumplirse sobre los datos. Los modelos de datos contienen también un conjunto de operaciones básicas para la realización de consultas (lecturas) y actualizaciones de datos.
Los modelos de datos de alto nivel, o modelos conceptuales, disponen de conceptos muy cercanos al modo en que la mayoría de los usuarios percibe los datos, mientras que los modelos de datos de bajo nivel, o modelos físicos, proporcionan conceptos que describen los detalles de cómo se almacenan los datos en el ordenador. Los conceptos de los modelos físicos están dirigidos al personal informático, no a los usuarios finales. Entre estos dos extremos se encuentran los modelos lógicos.
Los modelos conceptuales utilizan conceptos como entidades, atributos y relaciones.
-Una entidad representa un objeto o concepto del mundo real como, por ejemplo, un empleado de la empresa inmobiliaria o una oficina
-Un atributo representa alguna propiedad de interés de una entidad como, por ejemplo, el nombre o el salario
-Una relación describe una interacción entre dos o más entidades
Cada SGBD soporta un modelo lógico, siendo los más comunes el relacional, el de red y el jerárquico.
Estos tres se denominan modelos orientados a registros, dentro de los modelos lógicos hay otro más nuevo, es el modelo orientado a objetos, que está más cerca al modelo conceptual.
Los modelos físicos describen cómo se almacenan los datos en el ordenador: el formato de los registros, la estructura de los ficheros (desordenados, ordenados, etc.) y los métodos de acceso utilizados (índices, etc.).
A la descripción de una base de datos mediante un modelo de datos se le denomina esquema de la base de datos.
Arquitectura de los sistemas de bases de datos
Las tres características más importantes en la arquitectura de los sistemas de bases de datos son:
– La separación entre los programas de aplicación y los datos.
– El manejo de múltiples vistas.
– El uso de un catálogo para almacenar el esquema de la base de datos
El objetivo de los tres niveles de arquitectura es el de separar los programas de aplicación de la base de datos física.
El esquema de una base de datos se define en tres niveles de abstracción.
-En el nivel interno se describe la estructura física de la base de datos mediante un esquema interno. Este esquema se especifica mediante un modelo físico y describe todos los detalles para el almacenamiento de la base de datos, así como los métodos de acceso.
-En el nivel conceptual se describe la estructura de toda la base de datos para una comunidad de usuarios (todos los de una empresa u organización), mediante un esquema conceptual. Este esquema oculta los detalles de las estructuras de almacenamiento y se concentra en describir entidades, atributos, relaciones, operaciones de los usuarios y restricciones. En este nivel se puede utilizar un modelo conceptual o un modelo lógico para especificar el esquema.
-En el nivel externo se describen varios esquemas externos o vistas de usuario.
Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios determinados y ocultos a ese grupo el resto de la base de datos.
En este nivel se puede utilizar un modelo conceptual o un modelo lógico para especificar los esquemas.
Los tres esquemas no son más que descripciones de los mismos datos pero con distintos niveles de abstracción.

Por lo tanto, el SGBD debe transformar cualquier petición expresada en términos de un esquema externo a una petición expresada en términos del esquema conceptual, y luego, a una petición en el esquema interno, que se procesará sobre la base de datos almacenada.
El proceso de transformar peticiones y resultados de un nivel a otro se denomina correspondencia o transformación.

Se pueden definir dos tipos de independencia de datos:
La independencia lógica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicación. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla.
La independencia física es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos).

Funciones de los sistemas de gestión de bases de datos

-Un SGBD debe proporcionar a los usuarios la capacidad de almacenar datos en la base de datos, acceder a ellos y actualizarlos. Esta es la función fundamental
-Un SGBD debe proporcionar un catálogo en el que se almacenen las descripciones de los datos y que sea accesible por los usuarios (metadatos).
Normalmente un DD (diccionario de datos) contiene:

·         Nombre, tipo y tamaño de los datos.
·         Nombre de las relaciones entre los datos.
·         Restricciones de integridad sobre los datos.
·         Nombre de los usuarios autorizados a acceder a la base de datos.
·         Esquemas externos, conceptuales e internos, y correspondencia entre los esquemas.
·         Estadísticas de utilización, tales como la frecuencia de las transacciones y el número de accesos realizados a los objetos de la base de datos.
-Un SGBD debe proporcionar un mecanismo que garantice que todas las actualizaciones correspondientes a una determinada transacción se realicen, o que no se realice ninguna.
-Un SGBD debe proporcionar un mecanismo capaz de recuperar la base de datos en caso de que ocurra algún suceso que la dañe.
Un SGBD debe proporcionar un mecanismo que garantice que sólo los usuarios autorizados pueden acceder a la base de datos.
-Un SGBD debe ser capaz de integrarse con algún software de comunicación.
Muchos usuarios acceden a la base de datos desde terminales.
-Un SGBD debe permitir que se mantenga la independencia entre los programas y la estructura de la base de datos.

3._SUMARRY
A data model is a set of concepts that serve to describe the structure of a database:
The data, the relationships between the data and the constraints that must be met on the data. The data models also contain a set of basic operations for performing queries (readings) and data updates.
High-level data models, or conceptual models, have concepts that are very close to the way most users perceive data, while low-level data models, or physical models, provide concepts that describe the details How the data is stored on the computer. The concepts of the physical models are directed to the computer personnel, not to the end users. Between these two extremes are the logical models.
Conceptual models use concepts such as entities, attributes, and relationships.
- An entity represents a real-world object or concept, such as an employee of the real estate company or an office
- An attribute represents some property of interest of an entity such as, for example, the name or the salary
-A relationship describes an interaction between two or more entities
Each DBMS supports a logical model, the most common being relational, network and hierarchical.
These three are called record-oriented models, within the logical models there is a newer one, it is the object-oriented model, which is closer to the conceptual model.
Physical models describe how data is stored on the computer: the format of the records, the structure of the files (disordered, ordered, etc.) and the access methods used (indexes, etc.).
The description of a database using a data model is called a database schema.
Architecture of the systems of databases
The three most important features in the architecture of the database systems are:
- The separation between the application programs and the data.
- Handling multiple views.
- The use of a catalog to store the schema of the database
The objective of the three levels of architecture is to separate the application programs from the physical database.
The schema of a database is defined in three levels of abstraction.
-In the internal level describes the physical structure of the database through an internal schema. This schema is specified by a physical model and describes all the details for storing the database as well as the access methods.
- At the conceptual level describes the structure of the entire database for a community of users (all of a company or organization), through a conceptual scheme. This scheme hides the details of storage structures and focuses on describing entities, attributes, relationships, user operations, and constraints. At this level a conceptual model or a logical model can be used to specify the schema.
-In the external level several external schemas or user views are described.
Each external schema describes the part of the database that is of interest to a group of users determined and hidden to that group the rest of the database.
At this level a conceptual model or a logical model can be used to specify the schemes.
The three schemes are merely descriptions of the same data but with different levels of abstraction.

Therefore, the DBMS must transform any request expressed in terms of an external schema to a request expressed in terms of the conceptual schema, and then, to a request in the internal schema, which will be processed on the stored database.
The process of transforming requests and results from one level to another is called correspondence or transformation.

Two types of data independence can be defined:
Logical independence is the ability to modify the conceptual scheme without having to alter external schemas or application programs. You can modify the conceptual schema to expand the database or to reduce it.
Physical independence is the ability to modify the internal schema without having to alter the conceptual (or external) scheme.

Functions of database management systems

- A DBMS should provide users with the ability to store data in the database, access and update it. This is the key function
- A DBMS must provide a catalog in which descriptions of data are stored and accessible by users (metadata).
Usually a DD (data dictionary) contains:

• Name, type and size of the data.
• Name of the relationships between the data.
• Integrity constraints on data.
• Name of users authorized to access the database.
• External, conceptual and internal schemes, and correspondence.

4._RECOMENDACIONES
Principalmente vemos la necesidad de conocer cada día más el entorno de las bases de datos. Aprender de manera didáctica y autodidactica con mayor dedicación.
Es necesario conocer que la implementación del código debe estar bien estructurado para evitar algunas redundancias innecesarias.
Conocer las especificaciones que nos presenta cuando estructuramos las tablas de cada base de datos, realizando nuestro trabajo más práctico y sencillo.

5._CONCLUSIONES
Durante la realización de este trabajo, aprendimos acerca del, lenguaje SQL, de los sistemas de gestión de bases de datos, y su importancia y utilidad a la hora de almacenar, clasificar y manejar información, de cualquier tipo.
Desde usuarios particulares, hasta grandes empresas, gozan de las ventajas que brindan los SGBD, desde clasificar la información según el criterio deseado por el usuario, modificar la información que contiene una base de datos, entre otras
MySQL ha sido un gestor de bases de datos muy útil desde que fue creado, y con el tiempo, nuevas funciones se le añadieron, expandiéndolo y volviéndolo mas útil, y convirtiéndose así en uno de los gestores de bases de datos mas utilizados a nivel mundial, junto a Oracle. Por otro lado, PostgreSQL es un SGBD continuamente modificado y actualizado por un grupo de desarrolladores a nivel mundial (PostgreSQL Global Development Group), también basado en el lenguaje SQL.
SQL significó un gran avance para este fin, almacenar y clasificar información, además de que gracias a su aparición, hoy en día existe una gran variedad de SGBD basados en el lenguaje SQL, como MySQL, PostgreSQL, Oracle, entre otros. Desde su estandarización, casi todos los programas que trabajan con bases de datos, utilizan este lenguaje, con diferentes variaciones y funciones, según el tipo de software y su objetivo.

6._GLOSARIO O TÉRMINO
1. Administración de Base de Datos Relacional: Técnica de admistración de bases de datos en la que la información se guarda en tablas de datos bidimensionales. El programa que funciona con dos tablas de datos al mismo tiempo, relaciona la información mediante vinculaciones establecidas por una columna o campos comunes.
 2. Acceso: La manera en la cual los archivos o conjunto de datos son referenciados por la computadora.
 3. Base de Datos: Es una serie de datos organizados y relacionados entre sí, los cuales son recolectados y explotados por los Sistemas de Información de una empresa o negocio en particular.
 4. Buscadores: O también llamados motores de búsqueda, son herramientas que permiten clasificar la información que existe en la red y hacerla localizable en poco tiempo según las preferencias del usuario.

5. Campo: Unidad básica de una base de datos, un campo puede ser, por ejemplo, el nombre de una persona. Los nombres de los campos, no pueden empezar con espacios en blanco y caracteres especiales. No pueden llevar puntos, ni signos de exclamación o corchetes. Si pueden tener espacios en blanco en el medio.
 6. Datos estadísticos: estos almacenan información estadística sobre los datos en la base de datos.
 7. El DBMS: es un conjunto de programas que se encargan de manejar la creación y todos los accesos a las bases de datos.
 8. ELIMINACION: Es una solicitud de eliminación que se expresa de forma muy parecida a una consulta. Sin embargo, en vez de presentar tuplas al usuario, quitamos las tuplas seleccionadas de la base de datos. Sólo puede eliminar tuplas completas; no se puede eliminar únicamente valores de determinados atributos.
 9. Facilidad de Consultas: Permitir al usuario hacer cuestiones sencillas a la base de datos. Este tipo de consultas tienen como misión proporcionar la información solicitada por el usuario de una forma correcta y rápida.
 10. Formulario: es el elemento en forma de fecha que permite la gestión de los datos de una forma mas cómoda y visiblemente mas atractiva
 11. Gestor de Base de Datos: Es un conjunto de programas que permiten crear y mantener una base de datos, asegurando su integridad, confidencialidad y seguridad
 12. Independencia de los datos: Se refiere a la protección contra los programas de aplicaciones que pueden originar modificaciones cuando se altera la organización física y lógica de las bases de datos.
 13. JDBC: La Conectividad de Bases de Datos Java (Java Database Connectivity, JDBC) es una especificación de la interfaz de aplicación de programa (application program interface, API) para conectar los programas escritos en Java a los datos en bases de datos populares.
 14. La manipulación de datos: la manipulación de datos es la recuperación de información almacenada en la base de datos
 15. Lenguaje de consulta:  Son los lenguajes en el que los usuarios solicitan información de la base de datos. Estos lenguajes son generalmente de más alto nivel que los lenguajes de programación. Los lenguajes de consulta pueden clasificarse como procedimentales y no procedimentales
 16. Manipulación de Base de Datos: Usando la base de Datos -- el usuario puede añadir, borrar y modificar información a la base de datos así como también hacer consultas
 17. Modelo de base de datos orientado a objetos: es una adaptación a los sistemas de bases de datos. Se basa en el concepto de encapsulamiento de datos y código que opera sobre estos en un objeto.
 18. Modelos de Red: Este modelo permite la representación de muchos a muchos de una Base de Datos. El modelo de red evita redundancia en la información, a través de la incorporación de un tipo de registro denominado el conector.

19. Nivel logico: definición de las estructuras de datos que constituyen la base de datos
 20. Reglas de Integridad: Son restricciones que definen los estados de consistencias de las bases de datos.
 21. DBMS: Es un conjunto de programas que se encarga de manejar la cremación y todos los acceso  a las bases de datos.
 22. DDL: Es un lenguaje de definición de datos
 23. Rectángulos: es parte de la estructura  de base de datos y son aquellos que representan un conjunto de entidades
 24. Recuperación: Proporcionar como mínimo el mismo nivel de recuperación que los sistemas de bases de datos actuales. De forma que, tanto en caso de fallo de hardware como de fallo de software, el sistema pueda retroceder hasta un estado coherente de los datos.
 24. Sistema de Administración de Base de Dato: Es el softwware que controla la organización, almacenamiento, recuperación, seguridad e integridad de los datos en una base de datos
 25. SISTEMA GESTOR DE BASE DE DATOS: Es un conjunto de programas que permiten crear y mantener una base de datos, asegurando su integridad, confidencialidad y seguridad.
 26. Software: Es un sistema  manejador de bases de datos que permite al usuario accesar con facilidad a los datos almacenados o que ande ser almacenados
 27. Transacción: es una secuencia de operaciones de acceso a la base de datos que constituye una unidad lógica de ejecución.
 28. Transacciones compartidas: Las transacciones compartidas soportan grupos de usuarios en estaciones de trabajo, los cuales desean coordinar sus esfuerzos en tiempo real, los usuarios pueden compartir los resultados intermedios de una base de datos. La transacción compartida permite que varias personas intervengan en una sola transacción.
 29. TUPLAS: Es la representación de una fila en una de las tablas que se esta almacenando datos. Y las cuales serán llamadas por los administradores de Base de Datos en el tiempo de ejecución de un sistema.
 30. Usuario final: es quien accesa a las bases de datos por medio de un lenguaje de consulta o de programas de aplicación.

7._BIBLIOGRAFIA O LINKOGRAFIA
http://www.angelfire.com/ultra2/pecanpie/Bimestral/Glosario.htm
https://www.cs.upc.edu/~bcasas/docencia/pfc/NormalitzacioBD.pdf
 http://www.monografias.com/trabajos30/base-datos/base-datos.shtml#ixzz46hPqSGl2
https://technet.microsoft.com/es-es/library/ms184276(v=sql.105).aspx
http://revista.seguridad.unam.mx/numero-12/principios-b%C3%A1sicos-de-seguridad-en- bases-de-datos