Llave Primaria y Llave Foranea

 Llave Primaria  (Primary Key)

Hemos visto que los datos son almacenados de manera lógica en tablas en la Bases de datos relacionales. Cada tabla tiene un nombre único. Para identificar una fila particular en una tabla, se usa una columna o combinación de columnas. Esta columna debe ser tal que identifique de manera única e inequívoca cada fila. No puede haber mas de dos filas (registros) en una tabla que tengan el mismo valor para la columna que haya sido elegida como llave primaria. Una columna identificada como la llave primaria no puede tener valores duplicados no nulos. Por ejemplo, considerando la tabla de Empleados presentada en la Figura No. 1, podemos ver que cada empleado tiene un único numero de empleado. La columna “NUM-EMP” puede ser escogida como la llave primaria. Similarmente, la columna “NUM-DEPT” en la tabla de Departamentos puede ser igualmente una llave primaria.
 
 
 Llave Foránea ( Foreign Key)
La llave primaria y la llave foránea son usadas para establecer relaciones entre tablas. En la Figura No. 1 el dominio de los valores de la columna “NUM-DEPT” de la tabla Empleados se encuentra dentro del rango de valores de la columna “NUM-DEPT” de la tabla Departamentos. Un empleado deber pertenecer a un Departamento que esté listado en la tabla Departamentos. Se considera entonces que la columna “NUM-DEPT” en la tabla Empleados es una llave foránea. De esta manera, la existencia de esta llave foránea en la tabla Empleados controla que no pueda ser ingresado un nuevo registro de un empleado si este no pertenece primero a un Departamento. Si el empleado que desea ingresarse a la tabla trabaja en un Departamento que no esta listado en la tabla Departamentos, primero debe crearse el registro del Departamento en su respectiva tabla, y luego si procedemos a ingresar al empleado. Este tipo de control que impone la asignación de una llave foránea en una tabla es de mucha utilidad para evitar la existencia de registros huérfanos y para evitar la incongruencia de datos, temas que veremos mas adelante. Además, como dijimos al principio, la llave foránea nos permite relacionar dos tablas, lo cual nos permite compartir y repartir la información de manera que no tengamos los mismos datos duplicados en varias tablas. Estos conceptos serán aterrizados en la sección de Normalización de tablas que se estudiará en un capitulo posterior.

Leave a comment »

Servidores de Bases de Datos

Aparte de las bases de datos de escritorio, están tambien las bases de datos por , como es el caso de especializados como SQL, Oracle, : esta clase de Data Base son por lo general utilizadas por multinacionales o corporaciones enormes, que necesitan de la asesoría y respaldo de un servidor competente y autorizado que protegan sus datos.

A continuacion veremos 3 de ellas.

Base de datos MYSQL

MySQL es un sistema de gestión de bases de datos relacional, licenciado bajo la GPL de la GNU. Su diseño multihilo le permite soportar una gran carga de forma muy eficiente. MySQL fue creada por la empresa sueca MySQL AB, que mantiene el copyright del código fuente del servidor SQL, así como también de la marca.

Aunque MySQL es software libre, MySQL AB distribuye una versión comercial de MySQL, que no se diferencia de la versión libre más que en el soporte técnico que se ofrece, y la posibilidad de integrar este gestor en un software propietario, ya que de no ser así, se vulneraría la licencia GPL.

Este gestor de bases de datos es, probablemente, el gestor más usado en el mundo del software libre, debido a su gran rapidez y facilidad de uso. Esta gran aceptación es debida, en parte, a que existen infinidad de librerías y otras herramientas que permiten su uso a través de gran cantidad de lenguajes de programación, además de su fácil instalación y configuración.

Características de MySQL

Las principales características de este gestor de bases de datos son las siguientes:

  1. Aprovecha la potencia de sistemas multiprocesador, gracias a su implementación multihilo.
  2. Soporta gran cantidad de tipos de datos para las columnas.
  3. Dispone de API’s en gran cantidad de lenguajes (C, C++, Java, PHP, etc).
  4. Gran portabilidad entre sistemas.
  5. Soporta hasta 32 índices por tabla.
  6. Gestión de usuarios y passwords, manteniendo un muy buen nivel de seguridad en los datos.

SQL Server

Microsoft SQL Server es un sistema de gestión de bases de datos relacionales (SGBD) basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ, capaz de poner a disposición de muchos usuarios grandes cantidades de datos de manera simultánea, así como de tener unas ventajas que más abajo se describen.

Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL

Características de Microsoft SQL Server

Oracle

Oracle es básicamente una herramienta cliente/servidor para la gestión de Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hace que sólo se vea en empresas muy grandes y multinacionales, por norma general. En el desarrollo de páginas web pasa lo mismo: como es un sistema muy caro no está tan extendido como otras bases de datos, por ejemplo, Access, MySQL, SQL Server, etc.

Caracteristicas de Oracle

Es una herramienta de administración gráfica que es mucho más intuitiva y cómoda de utilizar.

Ayuda a analizar datos y efectuar recomendaciones concernientes a mejorar el rendimiento y la eficiencia en el manejo de aquellos datos que se encuentran almacenados.

npoya en el diseño y optimización de modelos de datos.

Asistir a los desarrolladores con sus conocimientos de SQL y de construcción de procedimientos almacenados y triggers, entre otros.

Apoya en la definición de estándares de diseño y nomenclatura de objetos. Documentar y mantener un registro periódico de las mantenciones, actualizaciones de hardware y software, cambios en las aplicaciones y, en general, todos aquellos eventos relacionados con cambios en el entorno de utilización de una base de datos.

Leave a comment »

Bases de Datos

Se define una base de datos como 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.

Características

Entre las principales características de los sistemas de base de datos podemos mencionar:

  • Independencia lógica y física de los datos.
  • Redundancia mínima.
  • Acceso concurrente por parte de múltiples usuarios.
  • Integridad de los datos.
  • Consultas complejas optimizadas.
  • Seguridad de acceso y auditoría.
  • Respaldo y recuperación.
  • Acceso a través de lenguajes de programación estándar.

Tipos de bases de datos

  • Tablero del escritorio. El software de escritorio de la base de datos almacena y sirve datos de una sola computadora. Una base de datos de escritorio es perfecta para un negocio casero, o almacenar su información personal del contacto.
  • Servidor. el software Servidor-basado de la base de datos almacena datos en una computadora central y los pone a disposición otras computadoras vía una red o el Internet. el software Servidor-basado de la base de datos se utiliza típicamente en negocios más grandes y para los usos del e-comercio.

Tela-permitido. el software Tela-permitido de la base de datos permite que que ponens los datos sean almacenados localmente, sino a disposición los Web pages para el acceso del Internet. el software Tela-permitido de la base de datos, como Microsoft Access, es una gran manera de publicar los Web pages que no cambian a menudo. Típicamente, estas páginas contendrían referencia, el contacto o la información programar a largo plazo.

Definición de Servidor de base de datos

(database server). Un servidor de base de datos es un programa que provee servicios de base de datos a otros programas u otras computadoras, como es definido por el modelo cliente-servidor. También puede hacer referencia a aquellas computadoras (servidores) dedicadas a ejecutar esos programas, prestando el servicio.

Los sistemas de administración de base de datos (SGBD) generalmente proveen funcionalidades para servidores de base de datos, en cambio otros (como por ejemplo, MySQL) solamente proveen construcción y acceso a la base de datos.

Los servidores de bases de datos surgen con motivo de la necesidad de las empresas de manejar grandes y complejos volúmenes de datos, al tiempo que requieren compartir la información con un conjunto de clientes (que pueden ser tanto aplicaciones como usuarios) de una manera segura. Ante este enfoque, un sistema gestor de bases de datos (SGBD, a partir de ahora) deberá ofrecer soluciones de forma fiable, rentable y de alto rendimiento. A estas tres características, le debemos añadir una más: debe proporcionar servicios de forma global y, en la medida de lo posible, independientemente de la plataforma. Internet se ha convertido en nuestros días en la mayor plataforma de comunicaciones jamás vista. Esto hace que las empresas tiendan a presentar su información a través de la Web en forma de contenidos, que después los clientes consultarán para establecer relaciones con dichas empresas.

Proporcionamos los servidores de bases de datos más potentes y fiables en entornos de alta disponibilidad y sistemas de archivos seguros.

Oracle, Informix, MySQL, PostgreSQL, DB2, SAP … en diferentes entornos.

Leave a comment »

Practica 2 – Calculo de Edad

Hola Compañeros !

A continuacion desarrollaremos un pequeño programa donde podremos saber cual es nuestra edad actual en años, meses y dias.

Module Module1

    Sub Main()

        Dim Fechadenacimiento, FechaActual, FechaProyectada As Date

        Dim AnoActual, MesActual, DiaActual, AnoNacimiento, MesNacimiento, DiaNacimiento As Integer

        Console.WriteLine(“Ingrese su Fecha de Nacimiento:”)

        Fechadenacimiento = Console.ReadLine()

        FechaActual = Date.Now()

        AnoNacimiento = Year(Fechadenacimiento)

        MesNacimiento = Month(Fechadenacimiento)

        DiaNacimiento = Day(Fechadenacimiento)

        AnoActual = Year(FechaActual)

        MesActual = Month(FechaActual)

        DiaActual = Day(FechaActual)

        If DiaActual < DiaNacimiento Then

            DiaActual = DiaActual + 30

            MesActual = MesActual – 1

        End If

        If MesActual < MesNacimiento Then

            MesActual = MesActual + 12

            AnoActual = AnoActual – 1

        End If

        Console.WriteLine(“Tu Tienes:”)

        Console.WriteLine(DiaActual – DiaNacimiento & ” Dias”)

        Console.WriteLine(MesActual – MesNacimiento & ” Meses”)

        Console.WriteLine(AnoActual – AnoNacimiento & ” Años”)

        Console.WriteLine(“De haber nacido”)

        Console.Read()

        Console.Clear()

    End Sub

End Module

A parte de asignar un valor a cada variable, lo mas importante en esta practica es la Sentencia If ya que es muy importante que la fecha actual no sea mayor a la fecha de nacimiento que nos proporcionen, ejemplo: si actualmente es 18 y la fecha de nacimiento es 12 debo utilizar la sentencia If para crear una operacion donde al 12 se le preste 1 mes en dias de parte del siguiente dato que seria el mes y asi se hace sucesivamente si es el mes actual es mayor, cualquier duda o comentario, puede escribirme.

Hasta la proxima…

Leave a comment »

Tipos de Datos Visual Basic.net

Un tipo de dato define todo el posible rango de valores que una variable puede tomar al momento de ejecucion del programa y a lo largo de toda la vida util del propio programa.

Los tipos de datos mas comunes en Visual Basic Net son:

Tipo de Visual Basic Estructura de tipo Common Language Runtime Asignación de almacenamiento nominal Intervalo de valores
Boolean Boolean En función de la plataforma de implementación True o False
Byte Byte 1 byte 0 a 255 (sin signo)
Char (carácter individual) Char 2 bytes 0 a 65535 (sin signo)
Date DateTime 8 bytes 0:00:00 (medianoche) del 1 de enero de 0001 a 11:59:59 p.m. del 31 de diciembre de 9999.
Decimal Decimal 16 bytes 0 a +/-79.228.162.514.264.337.593.543.950.335 (+/-7,9… E+28) sin separador decimal; 0 a +/-7,9228162514264337593543950335 con 28 posiciones a la derecha del decimal;

el número distinto de cero más pequeño es +/-0,0000000000000000000000000001 (+/-1E-28)

Double (punto flotante de precisión doble) Double 8 bytes -1,79769313486231570E+308 a -4,94065645841246544E-324 para los valores negativos;

4,94065645841246544E-324 a 1,79769313486231570E+308 para los valores positivos

Integer Int32 4 bytes -2.147.483.648 a 2.147.483.647 (con signo)
Long (entero largo) Int64 8 bytes -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 (9,2…E+18 ) (con signo)
Object Object (clase) 4 bytes en plataforma de 32 bits

8 bytes en plataforma de 64 bits

Cualquier tipo puede almacenarse en una variable de tipo Object
SByte SByte 1 byte -128 a 127 (con signo)
Short (entero corto) Int16 2 bytes -32.768 a 32.767 (con signo)
Single (punto flotante de precisión simple) Single 4 bytes -3,4028235E+38 a -1,401298E-45 para los valores negativos;

1,401298E-45 a 3,4028235E+38 para los valores positivos

String (longitud variable) String (clase) En función de la plataforma de implementación 0 a 2.000 millones de caracteres Unicode aprox.
UInteger UInt32 4 bytes 0 a 4.294.967.295 (sin signo)
ULong UInt64 8 bytes 0 a 18.446.744.073.709.551.615 (1,8…E+19 ) (sin signo)
User-Defined (estructura) (hereda de ValueType) En función de la plataforma de implementación Cada miembro de la estructura tiene un intervalo de valores determinado por su tipo de datos y es independiente de los intervalos de valores correspondientes a los demás miembros.
UShort UInt16 2 bytes 0 a 65.535 (sin signo)

En la notación científica, “E” hace referencia a una potencia de 10. Por lo tanto, 3,56E+2 significa 3.56 x 102 o 356, y 3,56E-2 significa 3.56 / 102 o 0,0356.

Leave a comment »

Visual Basic.net

Visual Basic es un lenguaje de programación desarrollado por Alan Cooper para Microsoft. Su primera versión fue presentada en 1991 con la intención de simplificar la programación utilizando un ambiente de desarrollo completamente gráfico orientado a la creacion de objetos con el cual es posible desarrollar programas de computadora o aplicaciones de todo nivel.
Visual trabaja sobre una plataforma o framework que basicamente es la integracion de lenguajes, tecnologias y de librerías independientes.
En particular estudiaremos el Basic (Visual Studio) el cual constituye un IDE (entorno de desarrollo integrado o en inglés Integrated Development Enviroment) que ha sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código (programa donde se escribe el código fuente), un depurador (programa que corrige errores en el código fuente para que pueda ser bien compilado), un compilador (programa que traduce el código fuente a lenguaje de máquina), y un constructor de interfaz gráfica o GUI (es una forma de programar en la que no es necesario escribir el código para la parte gráfica del programa, sino que se puede hacer de forma visual).

Leave a comment »