¿Qué es Oracle?
Oracle es básicamente un herramienta cliente/servidor para la gestión de base de datos, es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hace que solo se vea en empresas muy grandes y multinacionales, por norma general.
Oracle como antes lo mencionamos se basa en la tecnología cliente/ servidor, pues bien, para su utilización primero seria necesario la instalación de la herramienta servidor ( Oracle8i ) y posteriormente podríamos atacar a la base de datos desde otros equipos con herramientas de desarrollo como Oracle Designer y Oracle Developer, que son las herramientas de programación sobre Oracle a partir de esta premisa vamos a desarrollar las principales acepciones de Oracle y sus aplicaciones en las distintas ares de trabajo.
Características
- Modelo relacional: los usuarios visualizan los datos en tablas con el formato filas/columnas.
- Herramienta de administración gráfica intuitiva y cómoda de utilizar.
- Control de acceso: tecnologías avanzadas para vigilar la entrada a los datos.
- Protección de datos: seguridad completa en el entorno de producción y de pruebas y gestión de copias de seguridad.
- Lenguaje de diseño de bases de datos muy completo (PL/SQL): permite implementar diseños "activos", que se pueden adaptar a las necesidades cambiantes de negocio.
- Alta disponibilidad: escalabilidad, protección y alto rendimiento para la actividad empresarial.
- Gestión de usuarios: agilidad en los trámites, reducción de costes y seguridad en el control de las personas que acceden a las aplicaciones y a los sistemas.
Ventajas
- Motor de base de datos objeto-relacional más usado a nivel mundial.
- Multiplataforma: puede ejecutarse desde un PC hasta una supercomputadora.
- Permite el uso de particiones para hacer consultas, informes, análisis de datos, etc.
- Soporta todas las funciones que se esperan de un buen servidor.
- Software del servidor que puede ejecutarse en multitud de sistemas operativos: Linux, Mac, Windows, etc.
- Existe incluso una versión personal para Windows 9x, lo cual es un punto a favor para los desarrolladores que se llevan trabajo a casa.
- Oracle es la base de datos con más orientación hacía INTERNET.
Desventajas
- Las versiones más recientes de Oracle son la 11g, 10g, 9g, 8g, desde el lanzamiento original de la 8 se sucedieron varias versiones con correcciones, hasta alcanzar la estabilidad en la 8.0.3. El motivo de tantos fallos fue, al parecer, la remodelación del sistema de almacenamiento por causa de la introducción de extensiones orientadas a objetos.
- El mayor inconveniente de Oracle es quizás su precio. Incluso las licencias de Personal Oracle son excesivamente caras, en mi opinión. Otro problema es la necesidad de ajustes. Un error frecuente consiste en pensar que basta instalar el Oracle en un servidor y enchufar directamente las aplicaciones clientes. Un Oracle mal configurado puede ser desesperantemente lento.
- También es elevado el coste de la información, y sólo últimamente han comenzado a aparecer buenos libros sobre asuntos técnicos distintos de la simple instalación y administración.
Versiones de Oracle
Standard Edition One
Ofrece facilidad de uso, potencia y rendimiento para grupos de trabajo, a nivel de departamentos y aplicaciones Web. Desde los entornos de un solo servidor para pequeñas empresas a los entornos de sucursales altamente distribuidos.
Standard Edition
Oracle Database Standard Edition ofrece las funcionalidades de la edición Standard Edition One, con el apoyo de máquinas más grandes y la agrupación de los servicios con Oracle Real Application Clusters (Oracle RAC). La funcionalidad no se incluía ni como opción en versiones estandard anteriores.
Enterprise Edition
Ofrece el rendimiento, la disponibilidad, la escalabilidad y la seguridad necesaria para las aplicaciones de misión crítica, tales como el procesamiento de grandes volúmenes de transacciones en línea (OLTP), almacenes de datos en consultas intensivas y exigentes aplicaciones de Internet.
Express Edition (XE)
Es una edición básica de la base de datos de Oracle. Es rápida de descargar, fácil de instalar y administrar, y es libre de desarrollar, implementar y distribuir. Es fácil de actualizar a las otras ediciones de Oracle sin migraciones costosas y complejas. Oracle Database XE se puede instalar en cualquier máquina tamaño con cualquier número de CPUs, almacena hasta 11 GB de datos de usuario, con un máximo de 1 GB de memoria, y con una sola CPU en la máquina host. Existe un foro en línea, para dar soporte.
Personal
Soporta los entornos de desarrollo de un solo usuario y el despliegue que requieren la plena compatibilidad con Oracle Database Standard Edition One, Oracle Database Standard Edition y Oracle Database Enterprise Edition. Le diferencia la excepción de la no opción de Oracle Real Application Clusters. Personal Edition sólo está disponible en los sistemas operativos Windows y Linux. Tampoco incluye los módulos de administración no están incluidos.
Limitaciones XE
La diferencia principal entre estas dos versiones es que la Express Edition es ideal para desarrollo de pequeñas webs. Es la versión gratuita de Oracle Database por lo que tiene las siguientes limitaciones:
- Sólo aprovecha 1 cpu del servidor.
- Sólo se puede asignar 1 Gb de memoria a la instancia.
- El tamaño máximo de la BD no puede superar los 4 Gb.
SQL plus
SQL*Plus es un programa de línea de comandos de Oracle que puede ejecutar comandos SQL y PL/SQL de forma interactiva o mediante un script.
SQL*Plus opera como una herramienta relativamente simple con una interfaz de líneas de comando básica. Los programadores y los administradores de bases de datos (DBA's) lo usan de forma muy común como interfaz fundamental en la mayoría de las instalaciones de software de Oracle.
SQL Developer
Oracle SQL Developer es la herramienta gráfica gratuita que proporciona Oracle para que no sea necesario utilizar herramientas de terceros (como el conocido TOAD, o el PL/SQL Developer) para desarrollar, o simplemente para ejecutar consultas o scripts SQL, tanto DML como DDL, sobre bases de datos Oracle.
¿Qué es SQL?
SQL (por sus siglas en inglés Structured Query Language; en español lenguaje de consulta estructurada) es un lenguaje de dominio específico utilizado en programación, diseñado para administrar, y recuperar información de sistemas de gestión de bases de datos relacionales.1 Una de sus principales características es el manejo del álgebra y el cálculo relacional para efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como realizar cambios en ellas.
Clásificación (Sentencias) de SQL
DML
DML significa DATA MANIPULATION LANGUAGE, este se utiliza para todas las transacciones de control sobre datos, esta categoría va destinada mas hacia las tablas, ya que en estas es donde se pueden emplear mayormente estas sentencias, con DML se puede insertar registros a las tablas, también modificarlas, consultarlas y hasta eliminarlas.
Esta categoría esta comprendida mas exactamente por las siguientes sentencias:
- SELECT - Instrucción básica con la cual se recupera datos de la base de datos, está instrucción se puede combinar con otras para hacer querys más complejas utilizando más tablas.
- INSERT - Instrucción básica para insertar datos en una tabla, está instrucción depende de otras dos para hacer una inserción básica, estás son INTO Y VALUES.
- UPDATE - Actualiza los datos de los registros de una o varias tablas.
- DELETE - Elimina uno o varios registros de una tabla, si se elimina en cascada se eliminarán en todos los registros que estén relacionados en otras tablas.
- MERGE - Operación UPSERT (inserción o actualización).
- CALL - Llama a un pl / sql o subprograma java.
- EXPLAIN PLAN - Explicar la ruta de acceso a los datos.
- LOCK TABLE - Concurrencias de control.
DDL
DDL significa DATA DEFINITION LANGUAGE, este sirve para definir las estructuras de bases de datos. mas especificamente sirve para crear tablas, usuarios, schemas, objetos, vistas, triggers y todo lo que permita el gestor. ademas de las anterior opción da también otras instrucciones que ayudan al manejo y mantenimiento arquitectónico del gestor.
Estas categoría esta conformada por las siguientes instrucciones:
CREATE - Crear cualquier tipo de objeto permitido por el gestor.
ALTER - Altera la estructura de cualquier objeto permitido por el gestor.
DROP - Elimina los objetos construidos por la sentencia CREATE.
TRUNCATE - Vacia el contenido de cualquier objeto en el gestor.
COMMENT - Agregar comentarios al diccionario de base de datos.
RENAME - Renombrar a un objeto.
DCL
DCL significa por sus siglas en inglés Lenguaje de Control de Datos, este es un lenguaje proporcionado por el gestor de Base de Datos, que sirve para controlar el acceso a los datos en diferentes niveles y formas, mas familiar mente serian las instrucciones que utiliza el DBA (Administrador de la Base de Datos), para controlar el acceso y permisos de los usuarios que actúan dentro del sistema, así podiendo dar permisos a un usuario de crear tablas, eliminar registros, actualizar usuarios etc ....
• GRANT: Permite suministrarle los suficientes permisos a un usuario para que ejecuten sus tareas en el sistema.
• REVOKE: Permite eliminar los permisos dados por el DBA con la instrucción GRANT
• CONNECT
• SELECT
• INSERT
• UPDATE
• DELETE
• USAGE
En Oracle, la ejecución de un comando DCL implica un COMMIT de forma implícita. Sin embargo, en PostgreSQL, la ejecución de un comando DCL forma parte de una transacción, por lo que puede ser deshecha mediante el comando ROLLBACK.
CONTROL DE TRANSACCIÓN (TCL)
Es un lenguaje de programación y un subconjunto de SQL , que se utiliza para controlar el procesamiento de transacciones en una base de datos. Una transacción es una unidad lógica de trabajo que comprende una o más sentencias SQL, por lo general un grupo de Data Manipulation Language (DML). Ejemplos de comandos de TCL incluyen:
• COMMIT - GUARDA EL TRABAJO REALIZADO.
• SAVEPOINT - IDENTIFICA UN PUNTO EN UNA TRANSACCIÓN A LA QUE MÁS TARDE SE PUEDE VOLVER.
• ROLLBACK - RESTAURAR LA BASE DE DATOS A LA ORIGINAL, HASTA EL ÚLTIMO COMMIT.
• SET TRANSACTION - CAMBIA LAS OPCIONES DE TRANSACCIÓN COMO NIVEL DE AISLAMIENTO Y QUÉ SEGMENTO DE CANCELACIÓN UTILIZA.
Lenguaje de Manipulación de Datos
Sintaxis Básica
| Recupera datos de la base de datos. Añade nuevas filas de datos a la base de datos. Suprime filas de datos de la base de datos. Modifica datos existentes en la base de datos. |
Transacciones en SQL
Las transacciones en SQL son unidades o secuencias de trabajo realizadas de forma ordenada y separada en una base de datos. Normalmente representan cualquier cambio en la base de datos, y tienen dos objetivos principales:
Proporcionar secuencias de trabajo fiables que permitan poder recuperarse fácilmente ante errorres y mantener una base de datos consistente incluso frente a fallos del sistema.
Proporcionar aislamiento entre programas accediendo a la vez a la base de datos.
Una transacción es una propagación de uno o más cambios en la base de datos, ya sea cuando se crea, se modifica o se elimina un registro. En la práctica suele consistir en la agrupación de consultas SQL y su ejecución como parte de una transacción.
Propiedades de las transacciones
Las transacciones siguen cuatro propiedades básicas, bajo el acrónimo ACID (Atomicity, Consistency, Isolation, Durability):
Atomicidad: aseguran que todas las operaciones dentro de la secuencia de trabajo se completen satisfactoriamente. Si no es así, la transacción se abandona en el punto del error y las operaciones previas retroceden a su estado inicial.
Consistencia: aseguran que la base de datos cambie estados en una transacción exitosa.
Aislamiento: permiten que las operaciones sean aisladas y transparentes unas de otras.
Durabilidad: aseguran que el resultado o efecto de una transacción completada permanezca en caso de error del sistema.
Control de las transacciones
Existen tres comandos básicos de control en las transacciones SQL:
COMMIT. Para guardar los cambios.
ROLLBACK. Para abandonar la transacción y deshacer los cambios que se hubieran hecho en la transacción.
SAVEPOINT. Crea checkpoints, puntos concretos en la transacción donde poder deshacer la transacción hasta esos puntos.
Los comandos de control de transacciones se usan sólo con INSERT, DELETE y UPDATE. No pueden utilizarse creando tablas o vaciándolas porque las operaciones se guardan automáticamente en la base de datos.
No hay comentarios:
Publicar un comentario