lunes, 29 de abril de 2013

Sentencia para crear una tabla

CREATE TABLE [esquema.] tabla
(columna tipodedato [DEFAULT expr][, ...]) ;

Para poder crear una tabla, el usuario con que se inicio Oracle, debe tener privilegio de CREATE TABLE y permiso sobre un área de almacenamiento. Debe tener un nombre de la tabla (tabla), nombre de las columnas, sus tipos de datos y el tamaño de las mismas (columna tipodedato [DEFAULT expr][, ...]). Para las columnas se puede especificar un valor por defecto.


Reglas para nombres de tablas y columnas:
  • Comenzar con una letra.
  • Máximo 30 caracteres. No puede estar vacía.
  • A-Z,a-z,0-9,_,$ y # son los caracteres validos para ser usados.
  • No puede ser igual a otro nombre otorgado a otro objeto del mismo usuario o a palabras reservadas de Oracle.
Crear tablas utilizando subquerys

CREATE TABLE tabla
[(columna1, columna2, ... , columna n)]
AS subquery;


  • El numero de columnas debe coincidir con el numero de columnas de la lista del subquery.
  • Si no se especifican las columnas, se toman las del subquery.
  • No se pasan las reglas de integridad a la nueva tabla, solo las definiciones de datos de las columnas. (Es decir, toca agregar las llaves primarias, foráneas y únicas.)

Creación de Tablas en Oracle

Sentencia para crear una tabla

CREATE TABLE [esquema.] tabla
(columna tipodedato [DEFAULT expr][, ...]) ;

Para poder crear una tabla, el usuario con que se inicio Oracle, debe tener privilegio de CREATE TABLE y permiso sobre un área de almacenamiento. Debe tener un nombre de la tabla (tabla), nombre de las columnas, sus tipos de datos y el tamaño de las mismas (columna tipodedato [DEFAULT expr][, ...]). Para las columnas se puede especificar un valor por defecto.


Reglas para nombres de tablas y columnas:
  • Comenzar con una letra.
  • Máximo 30 caracteres. No puede estar vacía.
  • A-Z,a-z,0-9,_,$ y # son los caracteres validos para ser usados.
  • No puede ser igual a otro nombre otorgado a otro objeto del mismo usuario o a palabras reservadas de Oracle.
Crear tablas utilizando subquerys

CREATE TABLE tabla
[(columna1, columna2, ... , columna n)]
AS subquery;


  • El numero de columnas debe coincidir con el numero de columnas de la lista del subquery.
  • Si no se especifican las columnas, se toman las del subquery.
  • No se pasan las reglas de integridad a la nueva tabla, solo las definiciones de datos de las columnas. (Es decir, toca agregar las llaves primarias, foráneas y únicas.)

miércoles, 17 de abril de 2013

Además de las diferentes operaciones y claves que tiene SQL, también se puede utilizar distintas funciones para ser aplicadas sobre tablas, expresiones y/o filas especificas. Esta es una lista de las funciones que podemos encontrar en SQL organizadas por las categorías de como se desempeñan:


Funciones de valores simples
  1. ABS(n)= Devuelve el valor absoluto de (n). 
  2. CEIL(n)=Obtiene el valor entero inmediatamente superior o igual a "n". 
  3. FLOOT(n) = Devuelve el valor entero inmediatamente inferior o igual a "n". 
  4. MOD (m, n)= Devuelve el resto resultante de dividir "m" entre "n". 
  5. NVL (valor, expresión)= Sustituye un valor nulo por otro valor. 
  6. POWER (m, exponente)= Calcula la potencia de un numero. 
  7. ROUND (numero [, m])= Redondea números con el numero de dígitos de precisión indicados. 
  8. SIGN (valor)= Indica el signo del "valor". 
  9. SQRT(n)= Devuelve la raíz cuadrada de "n". 
  10. TRUNC (numero, [m])= Trunca números para que tengan una cierta cantidad de dígitos de precisión. 
Funciones de grupos de valores
  1. AVG(n)= Calcula el valor medio de "n" ignorando los valores nulos. 
  2. COUNT (* | Expresión)= Cuenta el numero de veces que la expresión evalúa algún dato con valor no nulo. La opción "*" cuenta todas las filas seleccionadas. 
  3. MAX (expresión)= Calcula el máximo. 
  4. MIN (expresión)= Calcula el mínimo. 
  5. SUM (expresión)= Obtiene la suma de los valores de la expresión. 
  6. GREATEST (valor1, valor2…)= Obtiene el mayor valor de la lista. 
  7. LEAST (valor1, valor2…)= Obtiene el menor valor de la lista. 
  8. STDDEV( [Distinct | All] x)= Derivación estándar de n, ignorando los valores nulos.
  9. VARIANCE( [Distinct | All] x)= Varianza de n, ignorando los valores nulos.
Funciones que devuelven valores de caracteres
  1. CHR(n) = Devuelve el carácter cuyo valor en binario es equivalente a "n". 
  2. CONCAT (cad1, cad2)= Devuelve "cad1" concatenada con "cad2". 
  3. LOWER (cad)= Devuelve la cadena "cad" en minúsculas. 
  4. UPPER (cad)= Devuelve la cadena "cad" en mayúsculas. 
  5. INITCAP (cad)= Convierte la cadena "cad" a tipo titulo. 
  6. LPAD (cad1, n[,cad2])= Añade caracteres a la izquierda de la cadena hasta que tiene una cierta longitud. 
  7. RPAD (cad1, n[,cad2])= Añade caracteres a la derecha de la cadena hasta que tiene una cierta longitud. 
  8. LTRIM (cad [,set])= Suprime un conjunto de caracteres a la izquierda de la cadena. 
  9. RTRIM (cad [,set])= Suprime un conjunto de caracteres a la derecha de la cadena. 
  10. REPLACE (cad, cadena_busqueda [, cadena_sustitucion])= Sustituye un carácter o caracteres de una cadena con 0 o mas caracteres. 
  11. SUBSTR (cad, m [,n])= Obtiene parte de una cadena. 
  12. TRANSLATE (cad1, cad2, cad3)= Convierte caracteres de una cadena en caracteres diferentes, según un plan de sustitución marcado por el usuario. 
Funciones que devuelven valores numéricos
  1. ASCII(cad)= Devuelve el valor ASCII de la primera letra de la cadena "cad". 
  2. INSTR (cad1, cad2 [, comienzo [,m]])= Permite una búsqueda de un conjunto de caracteres en una cadena pero no suprime ningún carácter después. 
  3. LENGTH (cad)= Devuelve el numero de caracteres de cad. 
Funciones para el manejo de fechas
  1. SYSDATE= Devuelve la fecha del sistema. 
  2. ADD_MONTHS (fecha, n)= Devuelve la fecha "fecha" incrementada en "n" meses. 
  3. LASTDAY (fecha)= Devuelve la fecha del último día del mes que contiene "fecha". 
  4. MONTHS_BETWEEN (fecha1, fecha2)= Devuelve la diferencia en meses entre las fechas "fecha1" y "fecha2". 
  5. NEXT_DAY (fecha, cad)= Devuelve la fecha del primer día de la semana indicado por "cad" después de la fecha indicada por "fecha". 
Funciones de conversión
  1. TO_CHAR= Transforma un tipo DATE ó NUMBER en una cadena de caracteres. 
  2. TO_DATE= Transforma un tipo NUMBER ó CHAR en DATE. 
  3. TO_NUMBER= Transforma una cadena de caracteres en NUMBER.
Si conocen alguna otra, decirla en el comentario la función y lo que hacen, para ir agregándola a la lista.

Funciones Oracle SQL

Además de las diferentes operaciones y claves que tiene SQL, también se puede utilizar distintas funciones para ser aplicadas sobre tablas, expresiones y/o filas especificas. Esta es una lista de las funciones que podemos encontrar en SQL organizadas por las categorías de como se desempeñan:


Funciones de valores simples
  1. ABS(n)= Devuelve el valor absoluto de (n). 
  2. CEIL(n)=Obtiene el valor entero inmediatamente superior o igual a "n". 
  3. FLOOT(n) = Devuelve el valor entero inmediatamente inferior o igual a "n". 
  4. MOD (m, n)= Devuelve el resto resultante de dividir "m" entre "n". 
  5. NVL (valor, expresión)= Sustituye un valor nulo por otro valor. 
  6. POWER (m, exponente)= Calcula la potencia de un numero. 
  7. ROUND (numero [, m])= Redondea números con el numero de dígitos de precisión indicados. 
  8. SIGN (valor)= Indica el signo del "valor". 
  9. SQRT(n)= Devuelve la raíz cuadrada de "n". 
  10. TRUNC (numero, [m])= Trunca números para que tengan una cierta cantidad de dígitos de precisión. 
Funciones de grupos de valores
  1. AVG(n)= Calcula el valor medio de "n" ignorando los valores nulos. 
  2. COUNT (* | Expresión)= Cuenta el numero de veces que la expresión evalúa algún dato con valor no nulo. La opción "*" cuenta todas las filas seleccionadas. 
  3. MAX (expresión)= Calcula el máximo. 
  4. MIN (expresión)= Calcula el mínimo. 
  5. SUM (expresión)= Obtiene la suma de los valores de la expresión. 
  6. GREATEST (valor1, valor2…)= Obtiene el mayor valor de la lista. 
  7. LEAST (valor1, valor2…)= Obtiene el menor valor de la lista. 
  8. STDDEV( [Distinct | All] x)= Derivación estándar de n, ignorando los valores nulos.
  9. VARIANCE( [Distinct | All] x)= Varianza de n, ignorando los valores nulos.
Funciones que devuelven valores de caracteres
  1. CHR(n) = Devuelve el carácter cuyo valor en binario es equivalente a "n". 
  2. CONCAT (cad1, cad2)= Devuelve "cad1" concatenada con "cad2". 
  3. LOWER (cad)= Devuelve la cadena "cad" en minúsculas. 
  4. UPPER (cad)= Devuelve la cadena "cad" en mayúsculas. 
  5. INITCAP (cad)= Convierte la cadena "cad" a tipo titulo. 
  6. LPAD (cad1, n[,cad2])= Añade caracteres a la izquierda de la cadena hasta que tiene una cierta longitud. 
  7. RPAD (cad1, n[,cad2])= Añade caracteres a la derecha de la cadena hasta que tiene una cierta longitud. 
  8. LTRIM (cad [,set])= Suprime un conjunto de caracteres a la izquierda de la cadena. 
  9. RTRIM (cad [,set])= Suprime un conjunto de caracteres a la derecha de la cadena. 
  10. REPLACE (cad, cadena_busqueda [, cadena_sustitucion])= Sustituye un carácter o caracteres de una cadena con 0 o mas caracteres. 
  11. SUBSTR (cad, m [,n])= Obtiene parte de una cadena. 
  12. TRANSLATE (cad1, cad2, cad3)= Convierte caracteres de una cadena en caracteres diferentes, según un plan de sustitución marcado por el usuario. 
Funciones que devuelven valores numéricos
  1. ASCII(cad)= Devuelve el valor ASCII de la primera letra de la cadena "cad". 
  2. INSTR (cad1, cad2 [, comienzo [,m]])= Permite una búsqueda de un conjunto de caracteres en una cadena pero no suprime ningún carácter después. 
  3. LENGTH (cad)= Devuelve el numero de caracteres de cad. 
Funciones para el manejo de fechas
  1. SYSDATE= Devuelve la fecha del sistema. 
  2. ADD_MONTHS (fecha, n)= Devuelve la fecha "fecha" incrementada en "n" meses. 
  3. LASTDAY (fecha)= Devuelve la fecha del último día del mes que contiene "fecha". 
  4. MONTHS_BETWEEN (fecha1, fecha2)= Devuelve la diferencia en meses entre las fechas "fecha1" y "fecha2". 
  5. NEXT_DAY (fecha, cad)= Devuelve la fecha del primer día de la semana indicado por "cad" después de la fecha indicada por "fecha". 
Funciones de conversión
  1. TO_CHAR= Transforma un tipo DATE ó NUMBER en una cadena de caracteres. 
  2. TO_DATE= Transforma un tipo NUMBER ó CHAR en DATE. 
  3. TO_NUMBER= Transforma una cadena de caracteres en NUMBER.
Si conocen alguna otra, decirla en el comentario la función y lo que hacen, para ir agregándola a la lista.

lunes, 8 de abril de 2013

Como les he comentado, la página está destinada mas que todo a explicar SQL y Base de datos enfocado al motor Oracle. Por eso, les anuncio que este Miércoles en Bogotá se realizará el Oracle Day, un evento organizado para mostrar tecnología empresarial que ofrece el motor.


En el evento se dará a conocer las soluciones que Oracle puede ofrecer para organizaciones, teniendo en cuenta las nuevas economías que se están desarrollando en el mercado. Asistirán clientes, asociados de negocio y ejecutivos de Oracle de primer nivel.

Oracle Day en Bogotá

Como les he comentado, la página está destinada mas que todo a explicar SQL y Base de datos enfocado al motor Oracle. Por eso, les anuncio que este Miércoles en Bogotá se realizará el Oracle Day, un evento organizado para mostrar tecnología empresarial que ofrece el motor.


En el evento se dará a conocer las soluciones que Oracle puede ofrecer para organizaciones, teniendo en cuenta las nuevas economías que se están desarrollando en el mercado. Asistirán clientes, asociados de negocio y ejecutivos de Oracle de primer nivel.

Esta entrada fue publicada en :

viernes, 5 de abril de 2013

Cuando estamos trabajando con SQL tenemos a nuestra disposición el operador concatenar, que nos permite unir diferentes columnas y/o caracteres (string) de otras columnas. Al usar esta operación se crea una columna resultante que es una expresión de caracteres.

Operador Concatenar ( || )

Para utilizar este operador en SQL, usamos el símbolo || entre las dos columnas o caracteres que se desean concatenar. Se pueden concatenar columnas con caracteres o columnas con columnas. Un ejemplo:

  1  select last_name || ' , ' || job_id EyC
  2 from employees;

Operador Concatenar ( || )

Cuando estamos trabajando con SQL tenemos a nuestra disposición el operador concatenar, que nos permite unir diferentes columnas y/o caracteres (string) de otras columnas. Al usar esta operación se crea una columna resultante que es una expresión de caracteres.

Operador Concatenar ( || )

Para utilizar este operador en SQL, usamos el símbolo || entre las dos columnas o caracteres que se desean concatenar. Se pueden concatenar columnas con caracteres o columnas con columnas. Un ejemplo:

  1  select last_name || ' , ' || job_id EyC
  2 from employees;
En las tablas de las bases de datos vienen siempre con un nombre para cada columna. Algunas veces al realizar las consultas necesitamos cambiar el nombre de la columna para facilitar la lectura y el entendimiento de los resultados del query (consulta).

  • El alias permite renombrar el encabezado de cualquier columna que se necesite (incluyendo las columnas resultado de expresiones aritméticas).
  • Es muy útiles utilizar el alias para facilitar la compresión de la tabla de consulta y para la realización de cálculos.
  • Para agregar una alias a una columna se puede escribir el nombre que se desea usar después del nombre de la columna, o usar la clave AS entre el nombre de la columna y el alias.
  • El alias distingue entre mayúscula y minúscula. Si tiene algún símbolo se deben usar comillas dobles que encierren el nuevo nombre.

Definir Alias en una Columna

En las tablas de las bases de datos vienen siempre con un nombre para cada columna. Algunas veces al realizar las consultas necesitamos cambiar el nombre de la columna para facilitar la lectura y el entendimiento de los resultados del query (consulta).

  • El alias permite renombrar el encabezado de cualquier columna que se necesite (incluyendo las columnas resultado de expresiones aritméticas).
  • Es muy útiles utilizar el alias para facilitar la compresión de la tabla de consulta y para la realización de cálculos.
  • Para agregar una alias a una columna se puede escribir el nombre que se desea usar después del nombre de la columna, o usar la clave AS entre el nombre de la columna y el alias.
  • El alias distingue entre mayúscula y minúscula. Si tiene algún símbolo se deben usar comillas dobles que encierren el nuevo nombre.

jueves, 4 de abril de 2013

Cuando se define un campo como null, este toma un valor no disponible, sin asignar, desconocido e inaplicable. Un valor null tiene un valor diferente a 0 o a un espacio en blanco. El 0 es un numero y el espacio en blanco es un carácter.

Definir Valores null en SQL

Cualquier columna puede contener valores null, al menos que estas sean declaradas como NOT NULL. Cuando es así, los campos de esta columna no pueden tener valores null. Si una de las columnas es declarada como clave primaria, esta se declara también como NOT NULL. Esto se debe a que la columna se usa para diferenciar las diferentes filas.

Cualquier expresión aritmética en SQL que opere con un valor null, tendrá un resultado null.

Definir Valores null en SQL

Cuando se define un campo como null, este toma un valor no disponible, sin asignar, desconocido e inaplicable. Un valor null tiene un valor diferente a 0 o a un espacio en blanco. El 0 es un numero y el espacio en blanco es un carácter.

Definir Valores null en SQL

Cualquier columna puede contener valores null, al menos que estas sean declaradas como NOT NULL. Cuando es así, los campos de esta columna no pueden tener valores null. Si una de las columnas es declarada como clave primaria, esta se declara también como NOT NULL. Esto se debe a que la columna se usa para diferenciar las diferentes filas.

Cualquier expresión aritmética en SQL que opere con un valor null, tendrá un resultado null.
Al realizar consultas con SQL (aunque el lenguaje es universal, reitero que trabajo y explico orientando hacia Oracle), se pueden usar las siguientes operaciones aritméticas:


  • Suma (+)
  • Resta (-)
  • Multiplicación (*)
  • División (/)



Las expresiones aritméticas pueden contener nombres de columnas, constantes numéricas y operaciones aritméticas. Al usar los operadores y expresiones aritméticas, en el retorno de la consulta se mostrará una nueva columna con la información resultante de la expresión y con el nombre de la expresión aritmética completa. Esa columna no hace parte de ninguna de las tablas usadas en la consulta.


En Oracle 9i se ignoran los espacios en blanco antes y después de la operación aritmética.

Prioridad de los operadores aritméticos

La prioridad de los operadores es igual que en la matemática que conocemos: 
  • Multiplicación (*) y división (/) tienen mayor prioridad que suma (+) y resta (-).
  • Los operadores con misma prioridad son leídos de izquierda a derecha.
  • Se pueden usar paréntesis para especificar la prioridad y evitar malentendidos. Además para facilitar la lectura y compresión de la expresión.

Expresiones Aritméticas en SQL

Al realizar consultas con SQL (aunque el lenguaje es universal, reitero que trabajo y explico orientando hacia Oracle), se pueden usar las siguientes operaciones aritméticas:


  • Suma (+)
  • Resta (-)
  • Multiplicación (*)
  • División (/)



Las expresiones aritméticas pueden contener nombres de columnas, constantes numéricas y operaciones aritméticas. Al usar los operadores y expresiones aritméticas, en el retorno de la consulta se mostrará una nueva columna con la información resultante de la expresión y con el nombre de la expresión aritmética completa. Esa columna no hace parte de ninguna de las tablas usadas en la consulta.


En Oracle 9i se ignoran los espacios en blanco antes y después de la operación aritmética.

Prioridad de los operadores aritméticos

La prioridad de los operadores es igual que en la matemática que conocemos: 
  • Multiplicación (*) y división (/) tienen mayor prioridad que suma (+) y resta (-).
  • Los operadores con misma prioridad son leídos de izquierda a derecha.
  • Se pueden usar paréntesis para especificar la prioridad y evitar malentendidos. Además para facilitar la lectura y compresión de la expresión.

miércoles, 3 de abril de 2013

Con la declaración SELECT se pueden realizar las siguientes funciones:

  • Proyección: Permite escoger columnas determinadas para ser retornadas a la hora de hacer una consulta.
  • Selección: Puede seleccionar las filas que serán mostradas a través de la consulta que realicemos.
  • Unión: Juntar información de 2 tablas diferentes, mediante la creación de un enlace entre ellas.
Declaración SELECT en SQL

Plantilla de la sentencia:
SELECT * | { [Distinct] columna|expresión [alias], ... }
FROM nombre_de_la_tabla;

En la sentencia, * hace que se seleccionen todas las columnas, Distinct elimina las tablas duplicadas, columna|expresión son las columnas expresiones a seleccionar y alias el nombre que mostrará la respectiva columna.

Si no se desea seleccionar todas las columnas, se puede eliminar el * y listar entre los {} solo las columnas que queremos que aparezcan en la consulta.

Declaración SELECT en SQL

Con la declaración SELECT se pueden realizar las siguientes funciones:

  • Proyección: Permite escoger columnas determinadas para ser retornadas a la hora de hacer una consulta.
  • Selección: Puede seleccionar las filas que serán mostradas a través de la consulta que realicemos.
  • Unión: Juntar información de 2 tablas diferentes, mediante la creación de un enlace entre ellas.
Declaración SELECT en SQL

Plantilla de la sentencia:
SELECT * | { [Distinct] columna|expresión [alias], ... }
FROM nombre_de_la_tabla;

En la sentencia, * hace que se seleccionen todas las columnas, Distinct elimina las tablas duplicadas, columna|expresión son las columnas expresiones a seleccionar y alias el nombre que mostrará la respectiva columna.

Si no se desea seleccionar todas las columnas, se puede eliminar el * y listar entre los {} solo las columnas que queremos que aparezcan en la consulta.
Oracle SQL

Como les comenté en las primeras entradas, en el blog explicaré los temas orientando todo hacia el motor  de base de datos Oracle. Existen tres tipos de elementos en las sentencias SQL:

  • Claves: Las declaraciones individuales SQL. Es decir, la declaración o sentencia sin agregarle las especificaciones. Por ejemplo: SELECT, FROM, WHERE, etc.
  • Clausulas: Parte de una declaración SQL. Se refiere a la información que se le dará a la clave para realizar la consulta. Por ejemplo: En un SELECT sería nombre_campo, en un FROM sería nombre_tabla.
  • Declaración: Son 2 o más clausulas combinadas. Por ejemplo: SELECT * FROM employees.
Para continuar con la temática, pueden guiarse con el libro Oracle 9i:SQL, con el que de hecho estoy trabajando.

Las declaraciones en SQL siguen las siguientes reglas (por lo general):

  • No distinción entre mayúscula y minúscula, al manos que se indique.
  • Pueden ser escritas en una o varias lineas.
  • Las claves no pueden ser divididas en varias lineas diferentes ni tampoco pueden ser abreviadas.
  • Las clausulas por lo general son colocadas en lineas diferentes para facilitar la lectura y su edición.
  • Los encabezados por efecto de una columna son escritos en mayúscula. En iSQL son justificados al centro. En SQL plus (el que usamos) los caracteres y fechas son justificados a la izquierda y los números a la derecha.

Oracle SQL

Oracle SQL

Como les comenté en las primeras entradas, en el blog explicaré los temas orientando todo hacia el motor  de base de datos Oracle. Existen tres tipos de elementos en las sentencias SQL:

  • Claves: Las declaraciones individuales SQL. Es decir, la declaración o sentencia sin agregarle las especificaciones. Por ejemplo: SELECT, FROM, WHERE, etc.
  • Clausulas: Parte de una declaración SQL. Se refiere a la información que se le dará a la clave para realizar la consulta. Por ejemplo: En un SELECT sería nombre_campo, en un FROM sería nombre_tabla.
  • Declaración: Son 2 o más clausulas combinadas. Por ejemplo: SELECT * FROM employees.
Para continuar con la temática, pueden guiarse con el libro Oracle 9i:SQL, con el que de hecho estoy trabajando.

Las declaraciones en SQL siguen las siguientes reglas (por lo general):

  • No distinción entre mayúscula y minúscula, al manos que se indique.
  • Pueden ser escritas en una o varias lineas.
  • Las claves no pueden ser divididas en varias lineas diferentes ni tampoco pueden ser abreviadas.
  • Las clausulas por lo general son colocadas en lineas diferentes para facilitar la lectura y su edición.
  • Los encabezados por efecto de una columna son escritos en mayúscula. En iSQL son justificados al centro. En SQL plus (el que usamos) los caracteres y fechas son justificados a la izquierda y los números a la derecha.

viernes, 22 de marzo de 2013

En las entradas anteriores, expliqué de manera básica como crear la estructura de una base de datos: Identificar las entidades, sus relaciones, la cardinalidad de dichas relaciones, los atributos y como llevar toda esta información a tablas (que es como se representan las bases de datos en los motores como Oracle).



Ahora, llegamos a una parte muy importante: ¿Como consultar la información presente en dichas tablas? Existen varias sentencias que se utilizarán para consultar las tablas y obtener exclusivamente la información que necesitamos. Para eso, estudiaremos las siguientes operaciones:
  • SELECT (Selección, proyección y unión)
  • Diferencia de Conjuntos
  • Producto Cartesiano
  • Re-Nombramiento
  • Proyección Generalizada
  • Funciones de Agregación
  • Reunión Externa
Cada una será actualizada con el correspondiente link a la entrada donde se explicara que hace cada operación y como se expresa en sentencias.

Álgebra Relacional

En las entradas anteriores, expliqué de manera básica como crear la estructura de una base de datos: Identificar las entidades, sus relaciones, la cardinalidad de dichas relaciones, los atributos y como llevar toda esta información a tablas (que es como se representan las bases de datos en los motores como Oracle).



Ahora, llegamos a una parte muy importante: ¿Como consultar la información presente en dichas tablas? Existen varias sentencias que se utilizarán para consultar las tablas y obtener exclusivamente la información que necesitamos. Para eso, estudiaremos las siguientes operaciones:
  • SELECT (Selección, proyección y unión)
  • Diferencia de Conjuntos
  • Producto Cartesiano
  • Re-Nombramiento
  • Proyección Generalizada
  • Funciones de Agregación
  • Reunión Externa
Cada una será actualizada con el correspondiente link a la entrada donde se explicara que hace cada operación y como se expresa en sentencias.

miércoles, 13 de marzo de 2013

Los conjuntos de entidades pueden tener subgrupos de entidades, que se diferencian de alguna forma de los otros grupos de entidades del conjunto. Estos subgrupos de entidades pueden tener atributos que no son compartidos por todos los demás conjuntos de entidades.

Especialización y Generalización

Cuando los subgrupos de entidades son creados a partir de una entidad 'padre', se le llama especialización. En cambio, cuando varios conjuntos de entidades 'hijas' (refiriéndome a subgrupos de entidades) son reunidas para crear un conjunto de entidades 'padre', se le llama generalización.

Ambos representan algo similar: Un conjunto de entidades, que tiene uno o varios subgrupos de entidades que se pueden distinguir entre si. Cuando se forma más de una especialización de un conjunto de entidades, una entidad en particular puede pertenecer a varias especializaciones.

Especialización y Generalización

Los conjuntos de entidades pueden tener subgrupos de entidades, que se diferencian de alguna forma de los otros grupos de entidades del conjunto. Estos subgrupos de entidades pueden tener atributos que no son compartidos por todos los demás conjuntos de entidades.

Especialización y Generalización

Cuando los subgrupos de entidades son creados a partir de una entidad 'padre', se le llama especialización. En cambio, cuando varios conjuntos de entidades 'hijas' (refiriéndome a subgrupos de entidades) son reunidas para crear un conjunto de entidades 'padre', se le llama generalización.

Ambos representan algo similar: Un conjunto de entidades, que tiene uno o varios subgrupos de entidades que se pueden distinguir entre si. Cuando se forma más de una especialización de un conjunto de entidades, una entidad en particular puede pertenecer a varias especializaciones.

miércoles, 6 de marzo de 2013

Los conjuntos de entidades que no tiene una llave primaria definida, y además no tiene suficientes atributos para formar una por combinación de atributos, son conocidos como conjuntos de entidades débiles. Los conjuntos de entidades que tiene llave primaria son llamados conjuntos de entidades fuertes.

Entidades Débiles

Los conjuntos de entidades débiles no pueden existir por si solos, pues no tendrían ningún sentido. Estos deben estar asociados a un conjunto de entidades fuertes, en una relación de dependencia existencial. Son llamadas conjuntos de entidades identificadores o propietarias. La relación entre una entidad identificadora y una entidad débil, se le llama relación identificadora.

Aunque los conjuntos de entidades débiles no tienen llaves primarias, poseen un atributo que les permite distinguir entre las diferentes entidades débiles de una entidad identificadora particular. A este atributo se le llama discriminante (clave parcial). La llave primaria de un conjunto de entidades débiles será entonces la combinación de la llave primaria de la entidad identificadora y el discriminante.

En la imagen, podemos ver un ejemplo de una relación identificadora: Entre una entidad identificadora y una entidad débil. Como notamos, tanto la relación identificadora como la entidad débil, son representadas con una doble linea.

Entidades Débiles

Los conjuntos de entidades que no tiene una llave primaria definida, y además no tiene suficientes atributos para formar una por combinación de atributos, son conocidos como conjuntos de entidades débiles. Los conjuntos de entidades que tiene llave primaria son llamados conjuntos de entidades fuertes.

Entidades Débiles

Los conjuntos de entidades débiles no pueden existir por si solos, pues no tendrían ningún sentido. Estos deben estar asociados a un conjunto de entidades fuertes, en una relación de dependencia existencial. Son llamadas conjuntos de entidades identificadores o propietarias. La relación entre una entidad identificadora y una entidad débil, se le llama relación identificadora.

Aunque los conjuntos de entidades débiles no tienen llaves primarias, poseen un atributo que les permite distinguir entre las diferentes entidades débiles de una entidad identificadora particular. A este atributo se le llama discriminante (clave parcial). La llave primaria de un conjunto de entidades débiles será entonces la combinación de la llave primaria de la entidad identificadora y el discriminante.

En la imagen, podemos ver un ejemplo de una relación identificadora: Entre una entidad identificadora y una entidad débil. Como notamos, tanto la relación identificadora como la entidad débil, son representadas con una doble linea.
El modelo entidad-relación y el modelo relacional están íntimamente ligados. Luego de ser construido el diagrama entidad-relación, debemos proceder a crear las tablas respectivas para los conjuntos de entidades, y en caso de que sea necesario, las tablas correspondientes a las relaciones.

Del Modelo Entidad-Relación al Modelo Relacional

Construir las tablas de conjuntos de entidades no supone ningún problema, solo es agregar todos sus atributos. El problema viene cuando vamos a hacer a representar las relaciones. Para hacerlo, debemos tener en cuenta la cardinalidad de la relación:

Relación 1-n ó n-1

Sin atributos:

Si la relación no tiene atributos propios, no se debe formar tabla, ya que supondría un gasto de memoria innecesario. Sin embargo, aún debemos buscar una forma de representa esta relación. Esto se agregando en el conjunto de entidades con cardinalidad n, la llave primaria del conjunto de entidades con cardinalidad 1. Y al hacerlo, se debe asegurar esa llave para que no sea eliminada ni modificada, declarándola como llave foránea.

Con atributos:

Cuando la relación tiene atributos, tenemos dos posibilidades para representarla. Cada persona escogerá entonces la que le parezca mas adecuada en base a la información que maneja la base de datos:
  • No formar tabla: En este caso, los atributos de la relación se pasan a al conjunto de entidades muchos (es decir, cardinalidad n) y se declaran como llave foránea.
  • Formar tabla: Si tomamos esta vía, se deben pasar las llaves primarias de ambos conjuntos de entidades a la nueva tabla relación. La llave primaria de la tabla relación, será el atributo que viene de la entidad varios (nuevamente, cardinalidad n). Ambos atributos pasados a la tabla relación deben ser declarados como llave foránea.
Relación n-n

Cuando tenemos una relación de cardinalidad n-n (varios a varios), se debe formar tabla en todas las ocasiones, siguiendo algunas 'reglas':

La tabla correspondiente a la relación debe llevar los atributos propios de la relación (en caso de que los tenga), y además se deben pasar las llaves primarias de ambos conjuntos de entidades a la relación (nuevamente, declaradas como llave foránea). La llave primaria de la tabla de la relación será la combinación de las dos llaves primarias de los conjuntos de entidades.

Normalmente cuando se está representando una base de datos, se realiza primero el diagrama Entidad-Relación, y luego es pasado al Modelo relacional mediante estas condiciones.

Del Modelo Entidad-Relación al Modelo Relacional

El modelo entidad-relación y el modelo relacional están íntimamente ligados. Luego de ser construido el diagrama entidad-relación, debemos proceder a crear las tablas respectivas para los conjuntos de entidades, y en caso de que sea necesario, las tablas correspondientes a las relaciones.

Del Modelo Entidad-Relación al Modelo Relacional

Construir las tablas de conjuntos de entidades no supone ningún problema, solo es agregar todos sus atributos. El problema viene cuando vamos a hacer a representar las relaciones. Para hacerlo, debemos tener en cuenta la cardinalidad de la relación:

Relación 1-n ó n-1

Sin atributos:

Si la relación no tiene atributos propios, no se debe formar tabla, ya que supondría un gasto de memoria innecesario. Sin embargo, aún debemos buscar una forma de representa esta relación. Esto se agregando en el conjunto de entidades con cardinalidad n, la llave primaria del conjunto de entidades con cardinalidad 1. Y al hacerlo, se debe asegurar esa llave para que no sea eliminada ni modificada, declarándola como llave foránea.

Con atributos:

Cuando la relación tiene atributos, tenemos dos posibilidades para representarla. Cada persona escogerá entonces la que le parezca mas adecuada en base a la información que maneja la base de datos:
  • No formar tabla: En este caso, los atributos de la relación se pasan a al conjunto de entidades muchos (es decir, cardinalidad n) y se declaran como llave foránea.
  • Formar tabla: Si tomamos esta vía, se deben pasar las llaves primarias de ambos conjuntos de entidades a la nueva tabla relación. La llave primaria de la tabla relación, será el atributo que viene de la entidad varios (nuevamente, cardinalidad n). Ambos atributos pasados a la tabla relación deben ser declarados como llave foránea.
Relación n-n

Cuando tenemos una relación de cardinalidad n-n (varios a varios), se debe formar tabla en todas las ocasiones, siguiendo algunas 'reglas':

La tabla correspondiente a la relación debe llevar los atributos propios de la relación (en caso de que los tenga), y además se deben pasar las llaves primarias de ambos conjuntos de entidades a la relación (nuevamente, declaradas como llave foránea). La llave primaria de la tabla de la relación será la combinación de las dos llaves primarias de los conjuntos de entidades.

Normalmente cuando se está representando una base de datos, se realiza primero el diagrama Entidad-Relación, y luego es pasado al Modelo relacional mediante estas condiciones.

miércoles, 13 de febrero de 2013

Entre las funciones mas importantes de una base de datos es acceder y mostrar la información ya registrada, y también almacenar y actualizar nueva información. Para poder realizar estas funciones, se necesita un personal, que será catalogado en distintos tipos de usuarios o en administradores de base de datos.

Usuarios y Administradores de una Base de Datos

Usuarios e interfaces de usuario

Hay 4 tipos de usuarios en una base de datos, y dependen de la forma como interactúa cada uno con el sistema:
  1. Usuarios normales: Son los que interactúan con el sistema a través de las aplicaciones creadas anteriormente por los programadores para acceder y actualizar los datos. Por lo general lo hacen mediante un formulario, o simplemente leen un informe generado. Un ejemplo de esto es una persona que quiere consultar el saldo de su cuenta a través de Internet.
  2. Programadores de aplicaciones: Son los usuarios que crean programas de interfaces de usuario. Hay tres formas de construir estos programas:
    • Desarrollo rápido de aplicaciones (DRA): Son herramientas que facilitan la creación de formularios e informes sin la necesidad de escribir programas.
    • Lenguajes de cuarta generación: Son combinaciones de lenguajes imperativos e instrucciones del lenguaje de manipulación de datos. Los motores de búsqueda actuales vienen con  lenguajes de cuarta generación propio. En el caso de Oracle, el lenguaje se llama PL/SQL.
  3. Usuarios sofisticados: No utilizan programas escritos, sino que se relacionan con el sistema a través de comandos de lenguajes de consulta de base de datos (nuevamente, en Oracle sería SQL). Las herramientas de procesamiento analítico en linea  Permiten ver resúmenes e informes de los datos de forma diferente (datos mas específicos, cruces de tablas, etc).
  4. Usuarios especializados: Son usuarios que crean aplicaciones especializadas que no entran en el marco de de procesamiento normal de datos.
Administrador de la base de datos

El administrador tiene, entre muchas otras, las siguientes funciones:
  • Definición del esquema. Lo hace a través de un conjunto de instrucciones o comandos de declaración de datos en LDD.
  • Estructura de los datos y forma de acceso a los mismos.
  • Modifican y organizan el esquema. Dependiendo de la forma como va cambiando la empresa.
  • Autorización para el acceso a los datos. Decide a que partes de la base de datos puede acceder cada usuario.

Usuarios y Administradores de una Base de Datos

Entre las funciones mas importantes de una base de datos es acceder y mostrar la información ya registrada, y también almacenar y actualizar nueva información. Para poder realizar estas funciones, se necesita un personal, que será catalogado en distintos tipos de usuarios o en administradores de base de datos.

Usuarios y Administradores de una Base de Datos

Usuarios e interfaces de usuario

Hay 4 tipos de usuarios en una base de datos, y dependen de la forma como interactúa cada uno con el sistema:
  1. Usuarios normales: Son los que interactúan con el sistema a través de las aplicaciones creadas anteriormente por los programadores para acceder y actualizar los datos. Por lo general lo hacen mediante un formulario, o simplemente leen un informe generado. Un ejemplo de esto es una persona que quiere consultar el saldo de su cuenta a través de Internet.
  2. Programadores de aplicaciones: Son los usuarios que crean programas de interfaces de usuario. Hay tres formas de construir estos programas:
    • Desarrollo rápido de aplicaciones (DRA): Son herramientas que facilitan la creación de formularios e informes sin la necesidad de escribir programas.
    • Lenguajes de cuarta generación: Son combinaciones de lenguajes imperativos e instrucciones del lenguaje de manipulación de datos. Los motores de búsqueda actuales vienen con  lenguajes de cuarta generación propio. En el caso de Oracle, el lenguaje se llama PL/SQL.
  3. Usuarios sofisticados: No utilizan programas escritos, sino que se relacionan con el sistema a través de comandos de lenguajes de consulta de base de datos (nuevamente, en Oracle sería SQL). Las herramientas de procesamiento analítico en linea  Permiten ver resúmenes e informes de los datos de forma diferente (datos mas específicos, cruces de tablas, etc).
  4. Usuarios especializados: Son usuarios que crean aplicaciones especializadas que no entran en el marco de de procesamiento normal de datos.
Administrador de la base de datos

El administrador tiene, entre muchas otras, las siguientes funciones:
  • Definición del esquema. Lo hace a través de un conjunto de instrucciones o comandos de declaración de datos en LDD.
  • Estructura de los datos y forma de acceso a los mismos.
  • Modifican y organizan el esquema. Dependiendo de la forma como va cambiando la empresa.
  • Autorización para el acceso a los datos. Decide a que partes de la base de datos puede acceder cada usuario.

martes, 12 de febrero de 2013

Continuando con la entrada anterior, Modelos de los datos, en donde hablamos brevemente sobre el modelo entidad-relación. En esta entrada, manejaremos el modelo relacional de una forma bastante básica.

Modelos de los Datos: Modelo Relacional


Modelo Relacional

En este modelo, se utilizan tablas para representar las entidades y las relaciones existentes entre ellas. Cada tabla tendrá varias columnas, donde cada columna tendrá un nombre único. Estas columnas representan los atributos de las entidades.

Este modelo es uno de los mas usados, y una inmensa cantidad de bases de datos se basan en este modelo de relación para describir y estructurar sus datos. Este modelo se encuentran en un nivel de abstracción inferior al modelo entidad-relación. Es muy común que luego de realizar el modelo E-R, sean traducidos al modelo relacional. 

En este modelo es fácil que se cree información duplicada innecesaria si no te analiza con cuidado como se va a representar la base de datos.

Modelos de los Datos II

Continuando con la entrada anterior, Modelos de los datos, en donde hablamos brevemente sobre el modelo entidad-relación. En esta entrada, manejaremos el modelo relacional de una forma bastante básica.

Modelos de los Datos: Modelo Relacional


Modelo Relacional

En este modelo, se utilizan tablas para representar las entidades y las relaciones existentes entre ellas. Cada tabla tendrá varias columnas, donde cada columna tendrá un nombre único. Estas columnas representan los atributos de las entidades.

Este modelo es uno de los mas usados, y una inmensa cantidad de bases de datos se basan en este modelo de relación para describir y estructurar sus datos. Este modelo se encuentran en un nivel de abstracción inferior al modelo entidad-relación. Es muy común que luego de realizar el modelo E-R, sean traducidos al modelo relacional. 

En este modelo es fácil que se cree información duplicada innecesaria si no te analiza con cuidado como se va a representar la base de datos.
Luego de tener la estructura como manejaremos los datos, encontramos los modelos de datos. ¿Que son? Son herramientas que nos permiten describir los datos, sus relaciones, restricciones y su semántica.  Es decir, nos ayuda a describir la base de datos.

Modelos de los Datos: Modelo Entidad-Relación

Existen tres tipos de modelos de base de datos:
  • Modelos lógicos basados en objetos.
  • Modelos lógicos basados en registros.
  • Modelos físicos.
Modelo Entidad-Relación

Este modelo entidad-relación consta de objetos básicos, llamados entidades, y de las relaciones entre estos objetos. Cada entidad puede ser descrita por uno o varios atributos, que es información adicional de la entidad. Las relaciones, son simplemente asociaciones entre varias entidades.

El conjunto de todas las entidades del mismo tipo, y de todas las relaciones del mismo tipo se denomina, respectivamente, Conjunto de entidades y Conjunto de relaciones.

Ejemplo:
  • Entidad: Una cuenta bancaria.
  • Atributos: Nombre del dueño de la cuenta, saldo, numero de la cuenta, identificación de la persona.
  • Relaciones: Una relación impositor, que asocia cada cliente con cada cuenta que tiene.
Este tipo de modelo se puede representar gráficamente a través de un diagrama con las siguientes características:
  • Rectángulos: Representan los conjuntos de entidades.
  • Elipses: Los atributos de las entidades.
  • Rombos: Relaciones entre las entidades.
  • Lineas: Unen atributos con los conjuntos de entidades (Rectángulos) y estos con los conjuntos de relaciones (Rombos).
Este modelo puede tener ciertas restricciones. Una de las mas importantes es la correspondencia de cardinales, que limita el numero de entidades con la que otra entidad puede asociarse a través de un conjunto de relaciones.

Lee la segunda parte de este artículo, que habla sobre el Modelo Relacional: Modelos de los Datos II.

Modelos de los Datos

Luego de tener la estructura como manejaremos los datos, encontramos los modelos de datos. ¿Que son? Son herramientas que nos permiten describir los datos, sus relaciones, restricciones y su semántica.  Es decir, nos ayuda a describir la base de datos.

Modelos de los Datos: Modelo Entidad-Relación

Existen tres tipos de modelos de base de datos:
  • Modelos lógicos basados en objetos.
  • Modelos lógicos basados en registros.
  • Modelos físicos.
Modelo Entidad-Relación

Este modelo entidad-relación consta de objetos básicos, llamados entidades, y de las relaciones entre estos objetos. Cada entidad puede ser descrita por uno o varios atributos, que es información adicional de la entidad. Las relaciones, son simplemente asociaciones entre varias entidades.

El conjunto de todas las entidades del mismo tipo, y de todas las relaciones del mismo tipo se denomina, respectivamente, Conjunto de entidades y Conjunto de relaciones.

Ejemplo:
  • Entidad: Una cuenta bancaria.
  • Atributos: Nombre del dueño de la cuenta, saldo, numero de la cuenta, identificación de la persona.
  • Relaciones: Una relación impositor, que asocia cada cliente con cada cuenta que tiene.
Este tipo de modelo se puede representar gráficamente a través de un diagrama con las siguientes características:
  • Rectángulos: Representan los conjuntos de entidades.
  • Elipses: Los atributos de las entidades.
  • Rombos: Relaciones entre las entidades.
  • Lineas: Unen atributos con los conjuntos de entidades (Rectángulos) y estos con los conjuntos de relaciones (Rombos).
Este modelo puede tener ciertas restricciones. Una de las mas importantes es la correspondencia de cardinales, que limita el numero de entidades con la que otra entidad puede asociarse a través de un conjunto de relaciones.

Lee la segunda parte de este artículo, que habla sobre el Modelo Relacional: Modelos de los Datos II.

domingo, 10 de febrero de 2013

Sabemos bien que las bases de datos están cambiando constantemente, esto debido al ingreso, eliminación y actualización de la información registrada en ella. A la información que está guardada en un momento determinado se le llama ejemplar. En cambio, la forma como está diseñada toda la estructura de los datos se le denomina esquema.

Ejemplares y Esquemas de una Base De Datos

Los ejemplares cambian constantemente, pues hacen referencia a la información registrada. A diferencia de estos, los esquemas rara vez cambian. Solo cambian por dos razones:
  • La estructura de los datos fue mal realizada. (culpa del desarrollador).
  • Cuando se dieron las especificaciones para realizar la estructura no tomaron en cuenta muchos aspectos (culpa del cliente).
Haciendo una analogía con programación: Los esquemas vendrían siendo la declaración de las variables (que pueden tomar cualquier valor, al igual que en los esquemas se puede registrar información). Y los ejemplares vendrían siendo los valores que toman esas variables en momentos determinados.

Existen 3 esquemas en una base de datos:
  1. Esquema físico: Que es el que describe el diseño físico en el nivel físico.
  2. Esquema lógico: Lo describe en el nivel lógico. Aquí los programadores construyen sus aplicaciones y programas.
  3. Esquema de vistas: Una base de datos puede tener varios esquemas de vistas (al igual que en el nivel de vistas se tienen varias vistas, dependiendo de la situación). A estos, se les llaman subesquemas.

Ejemplares y Esquemas de una Base De Datos

Sabemos bien que las bases de datos están cambiando constantemente, esto debido al ingreso, eliminación y actualización de la información registrada en ella. A la información que está guardada en un momento determinado se le llama ejemplar. En cambio, la forma como está diseñada toda la estructura de los datos se le denomina esquema.

Ejemplares y Esquemas de una Base De Datos

Los ejemplares cambian constantemente, pues hacen referencia a la información registrada. A diferencia de estos, los esquemas rara vez cambian. Solo cambian por dos razones:
  • La estructura de los datos fue mal realizada. (culpa del desarrollador).
  • Cuando se dieron las especificaciones para realizar la estructura no tomaron en cuenta muchos aspectos (culpa del cliente).
Haciendo una analogía con programación: Los esquemas vendrían siendo la declaración de las variables (que pueden tomar cualquier valor, al igual que en los esquemas se puede registrar información). Y los ejemplares vendrían siendo los valores que toman esas variables en momentos determinados.

Existen 3 esquemas en una base de datos:
  1. Esquema físico: Que es el que describe el diseño físico en el nivel físico.
  2. Esquema lógico: Lo describe en el nivel lógico. Aquí los programadores construyen sus aplicaciones y programas.
  3. Esquema de vistas: Una base de datos puede tener varios esquemas de vistas (al igual que en el nivel de vistas se tienen varias vistas, dependiendo de la situación). A estos, se les llaman subesquemas.
Como les mencioné en otras entradas, es común que cualquier persona normal interactúe con una base de datos. ¿Pero que pasa si la persona no es muy buena en computación? Sería un caos que una persona sin estos conocimientos pudiera manipular así no mas la base de datos. Para solucionar esto, los desarrolladores han creado distintos niveles de abstracción (es decir, niveles de acceso, por así decirlo) a la base de datos:

Abstracción de datos

  • Nivel físico: Este es el nivel mas complejo, por tanto al que menos personas tienen acceso. Aquí se decide cómo se almacenan realmente los datos. Es decir, la estructura de los datos.
  • Nivel lógico: Este es un poco menos complejo, pero sigue siendo de difícil compresión para personas con pocos conocimientos en computación. En este nivel trabajan los administradores de bases de datos y los programadores (desarrolladores de aplicaciones para acceder y mostrar los datos). Aquí se decide qué datos se almacenan y como se relacionan entre ellos.
  • Nivel de vistas: Este es el nivel de menor complejidad, y es al que accede la gente normal. Un ejemplo de este nivel, es cuando hacemos un retiro en el cajero y nos muestra nuestro saldo restante. En una base de datos, podemos encontrar varias vistas, dependiendo del usuario que utilice el sistema. Además de esto, este nivel permite una mayor seguridad, impidiendo que usuarios accedan a información o partes de la base de datos que no les corresponde. Ejemplo: A un cliente de un banco no le importa el saldo de otra persona, o saber quienes son los trabajadores del banco y sus salarios.

Abstracción de datos

Como les mencioné en otras entradas, es común que cualquier persona normal interactúe con una base de datos. ¿Pero que pasa si la persona no es muy buena en computación? Sería un caos que una persona sin estos conocimientos pudiera manipular así no mas la base de datos. Para solucionar esto, los desarrolladores han creado distintos niveles de abstracción (es decir, niveles de acceso, por así decirlo) a la base de datos:

Abstracción de datos

  • Nivel físico: Este es el nivel mas complejo, por tanto al que menos personas tienen acceso. Aquí se decide cómo se almacenan realmente los datos. Es decir, la estructura de los datos.
  • Nivel lógico: Este es un poco menos complejo, pero sigue siendo de difícil compresión para personas con pocos conocimientos en computación. En este nivel trabajan los administradores de bases de datos y los programadores (desarrolladores de aplicaciones para acceder y mostrar los datos). Aquí se decide qué datos se almacenan y como se relacionan entre ellos.
  • Nivel de vistas: Este es el nivel de menor complejidad, y es al que accede la gente normal. Un ejemplo de este nivel, es cuando hacemos un retiro en el cajero y nos muestra nuestro saldo restante. En una base de datos, podemos encontrar varias vistas, dependiendo del usuario que utilice el sistema. Además de esto, este nivel permite una mayor seguridad, impidiendo que usuarios accedan a información o partes de la base de datos que no les corresponde. Ejemplo: A un cliente de un banco no le importa el saldo de otra persona, o saber quienes son los trabajadores del banco y sus salarios.

sábado, 9 de febrero de 2013

Las bases de datos son muy utilizadas en la actualidad por infinidad de empresas que necesitar organizar su información y poder mostrarla de una forma adecuada según sus necesidades. Incluso tu constantemente estás interactuando con bases de datos, aunque muchas veces pasen desapercibidas a tus ojos. 

Aplicaciones de las Bases de Datos

Cada vez utilizas un cajero electrónico, haces una búsqueda en Google o en la biblioteca de tu universidad, estás interactuando con una base de datos. Podemos encontrar la utilización de bases de datos en:
  • Universidades: Para guardar información sobre los estudiantes, sus matriculas, notas, clases, etc.
  • Bancos: Para clientes, transacciones, prestamos, cajeros electrónicos, tarjetas de crédito, etc.
  • Aerolíneas: Reservar tiquetes, información sobre los vuelos, turnos de despegue y aterrizaje.
  • Finanzas: Información de grandes empresas, ventas, compras, documentos, clientes, productos y mucho mas.
Al principio poca gente interactuaba con las bases de datos, pero a medida que fueron teniendo auge, las podemos encontrar cada vez mas en casi cualquier lugar. Incluso ha llegado a la web, en páginas de bancos (para consultar salgo y hacer transacciones), en el propio buscador de Google que tanto usamos, sistemas de correos electrónicos y muchas otras páginas mas.

Aplicaciones de las Bases de Datos

Las bases de datos son muy utilizadas en la actualidad por infinidad de empresas que necesitar organizar su información y poder mostrarla de una forma adecuada según sus necesidades. Incluso tu constantemente estás interactuando con bases de datos, aunque muchas veces pasen desapercibidas a tus ojos. 

Aplicaciones de las Bases de Datos

Cada vez utilizas un cajero electrónico, haces una búsqueda en Google o en la biblioteca de tu universidad, estás interactuando con una base de datos. Podemos encontrar la utilización de bases de datos en:
  • Universidades: Para guardar información sobre los estudiantes, sus matriculas, notas, clases, etc.
  • Bancos: Para clientes, transacciones, prestamos, cajeros electrónicos, tarjetas de crédito, etc.
  • Aerolíneas: Reservar tiquetes, información sobre los vuelos, turnos de despegue y aterrizaje.
  • Finanzas: Información de grandes empresas, ventas, compras, documentos, clientes, productos y mucho mas.
Al principio poca gente interactuaba con las bases de datos, pero a medida que fueron teniendo auge, las podemos encontrar cada vez mas en casi cualquier lugar. Incluso ha llegado a la web, en páginas de bancos (para consultar salgo y hacer transacciones), en el propio buscador de Google que tanto usamos, sistemas de correos electrónicos y muchas otras páginas mas.
Una base de datos hace referencia a una forma de almacenamiento de los datos, de forma organizada, de manera que se pueda acceder a los datos guardados de manera fácil y rápida. Además, las bases de datos actuales permiten buscar la información tomando en cuenta ciertas condiciones o requisitos para obtener resultados mas preciosos de lo que se quiere.

Base de Datos
En la imagen, un ejemplo de representación de una base de datos simple.

En esta página hablaremos todo lo referente a lo que tiene que ver base de datos, guiándonos por el libro "Fundamentos de base de datos" cuarto edición de los autores Abraham Silberschatz, Henry F. Korth y S. Sudarshan. También tendremos como guía el curso que ofrece Oracle para capacitar a cualquier persona en Base de Datos.

En estos momentos estoy realizando un curso sobre Base de datos, a medida que vaya aprendiendo, iré publicando. Espero logres aprender al igual que yo, y que encuentres en este blog lo que estabas buscando.

Base de Datos

Una base de datos hace referencia a una forma de almacenamiento de los datos, de forma organizada, de manera que se pueda acceder a los datos guardados de manera fácil y rápida. Además, las bases de datos actuales permiten buscar la información tomando en cuenta ciertas condiciones o requisitos para obtener resultados mas preciosos de lo que se quiere.

Base de Datos
En la imagen, un ejemplo de representación de una base de datos simple.

En esta página hablaremos todo lo referente a lo que tiene que ver base de datos, guiándonos por el libro "Fundamentos de base de datos" cuarto edición de los autores Abraham Silberschatz, Henry F. Korth y S. Sudarshan. También tendremos como guía el curso que ofrece Oracle para capacitar a cualquier persona en Base de Datos.

En estos momentos estoy realizando un curso sobre Base de datos, a medida que vaya aprendiendo, iré publicando. Espero logres aprender al igual que yo, y que encuentres en este blog lo que estabas buscando.