sábado, 22 de septiembre de 2012

Portafolio

UNIVERSIDAD TECNOLOGICA DEL VALLE DEL MEZQUITAL



PROGRAMA EDUCATIVO: Tecnologías dela Información y la Comunicación.

ASIGNATURA: ADMINISTRACION DE BASE DE DATOS.

FACILITADOR: Jacobo Morales.

NOMBRE:

Brenda Martínez Silis.

Tema: Portafolio

CUATRIMESTRE: Cuarto.

GRUPO: “E”.

PERIODO: Septiembre – Diciembre 2012 FECHA: 19 de Septiembre del 2012.






Arquitectura  cliente/servidor

Cuando en una red cliente/servidor existe una gran cantidad de recursos, es normal que existan varios equipos  servidores, pudiendo estar cada uno de ellos dedicado a ofrecer un solo tipo de servicio o información. Así, un servidor dedicado puede ser exclusivamente de archivos, de impresoras, de bases de datos, de correo electrónico, de páginas web, etc. Por norma general, los servidores dedicados son mucho más eficaces que aquellos que tienen asignadas múltiples tareas.
La tecnología Cliente/Servidor es el procesamiento cooperativo de la información por medio de un conjunto de procesadores, en el cual múltiples clientes, distribuidos geográficamente, solicitan requerimientos a uno o más servidores centrales.
Desde el punto de vista funcional, se puede definir la computación Cliente/Servidor como una arquitectura distribuida que permite a los usuarios finales obtener acceso a la información de forma transparente aún en entornos multiplataforma. Se trata pues, de la arquitectura más extendida en la realización de Sistemas Distribuidos.
Un sistema Cliente/Servidor es un Sistema de Información distribuido basado en las siguientes características:
  • Servicio: unidad básica de diseño. El servidor los proporciona y el cliente los utiliza.
  • Recursos compartidos: Muchos clientes utilizan los mismos servidores y, a través de ellos, comparten tanto recursos lógicos como físicos.
  • Protocolos asimétricos: Los clientes inician “conversaciones”. Los servidores esperan su establecimiento pasivamente.
  • Transparencia de localización física de los servidores y clientes: El cliente no tiene por qué saber dónde se encuentra situado el recurso que desea utilizar.
  • Independencia de la plataforma HW y SW que se emplee.
  • Sistemas débilmente acoplados. Interacción basada en envío de mensajes.
  • Encapsulamiento de servicios. Los detalles de la implementación de un servicio son transparentes al cliente.
  • Escalabilidad horizontal (añadir clientes) y vertical (ampliar potencia de los servidores).
  • Integridad: Datos y programas centralizados en servidores facilitan su integridad y mantenimiento.
ELEMENTOS PRINCIPALES
CLIENTE
Un cliente es todo proceso que reclama servicios de otro o cliente es el proceso que permite al usuario formular los requerimientos y pasarlos al servidor. Se lo conoce con el término front-end.

Éste normalmente maneja todas las funciones relacionadas con la manipulación y despliegue de datos, por lo que están desarrollados sobre plataformas que permiten construir interfaces gráficas de usuario (GUI), además de acceder a los servicios distribuidos en cualquier parte de la red. Las funciones que lleva a cabo el proceso cliente se resumen en los siguientes puntos:
  • Administrar la interfaz de usuario.
  • Interactuar con el usuario.
  • Procesar la lógica de la aplicación y hacer validaciones locales.
  • Generar requerimientos de bases de datos.
  • Recibir resultados del servidor.
  • Formatear resultados.
La funcionalidad del proceso cliente marca la operativa de la aplicación (flujo de información o lógica de negocio). De este modo el cliente se puede clasificar en:

  • Cliente basado en aplicación de usuario. Si los datos son de baja interacción y están fuertemente relacionados con la actividad de los usuarios de esos clientes.
  • Cliente basado en lógica de negocio. Toma datos suministrados por el usuario y/o la base de datos y efectúa los cálculos necesarios según los requerimientos del usuario.
SERVIDOR
Un servidor es todo proceso que proporciona un servicio a otros. Es el proceso encargado de atender a múltiples clientes que hacen peticiones de algún recurso administrado por él. Al proceso servidor se lo conoce con el término back-end. El servidor normalmente maneja todas las funciones relacionadas con la mayoría de las reglas del negocio y los recursos de datos. Las principales funciones que lleva a cabo el proceso servidor se enumeran a continuación:
  • Aceptar los requerimientos de bases de datos que hacen los clientes.
  • Procesar requerimientos de bases de datos.
  • Formatear datos para trasmitirlos a los clientes.
  • Procesar la lógica de la aplicación y realizar validaciones a nivel de bases de datos.
Puede darse el caso que un servidor actúe a su vez como cliente de otro servidor. Existen numerosos tipos de servidores, cada uno de los cuales da lugar a un tipo de arquitectura Cliente/Servidor diferente.
El término "servidor" se suele utilizar también para designar el hardware, de gran potencia, capacidad y prestaciones, utilizado para albergar servicios que atienden a un gran número de usuarios concurrentes. Desde el punto de vista de la arquitectura cliente/servidor y del procesamiento cooperativo un servidor es un servicio software que atiende las peticiones de procesos software clientes.



Escabilidad

En telecomunicaciones y en ingeniería informática, la escalabilidad es la propiedad deseable de un sistema, una red o un proceso, que indica su habilidad para reaccionar y adaptarse sin perder calidad, o bien manejar el crecimiento continuo de trabajo de manera fluida, o bien para estar preparado para hacerse más grande sin perder calidad en los servicios ofrecidos.
En general, también se podría definir como la capacidad del sistema informático de cambiar su tamaño o configuración para adaptarse a las circunstancias cambiantes. Por ejemplo, una Universidad que establece una red de usuarios por Internet para un edificio de docentes y no solamente quiere que su sistema informático tenga capacidad para acoger a los actuales clientes que son todos profesores, sino también a los clientes que pueda tener en el futuro dado que hay profesores visitantes que requieren de la red por algunos aplicativos académicos, para esto es necesario implementar soluciones que permitan el crecimiento de la red sin que la posibilidad de su uso y re-uso, disminuya o que pueda cambiar su configuración si es necesario.
La escalabilidad como propiedad de los sistemas es generalmente difícil de definir en cualquier caso, en particular es necesario definir los requerimientos específicos para la escalabilidad en esas dimensiones donde se crea que son importantes. Es una edición altamente significativa en sistemas electrónicos, bases de datos, ruteadores y redes. A un sistema cuyo rendimiento es mejorado después de haberle añadido más capacidad hardware, proporcionalmente a la capacidad añadida, se dice que pasa a ser un sistema escalable.




Interoperabilidad

La interoperabilidad consiste en que sistemas heterogéneos dispongan de mecanismos que permitan intercambiar procesos y/o datos. En el entorno web, la interoperabilidad es una condición necesaria para que los usuarios tengan un completo acceso a la información disponible.
La mayoría de organizaciones disponen de sistemas informáticos de diferentes fabricantes y dedicados a distintas operaciones, diversidad que también se da en las bases de datos. Como resultado de esta situación, las empresas se ven obligadas a mantener más de un sistema para la realización de una tarea, siendo difícil la extracción de toda la información necesaria, puesto que esta se encuentra aislada en aplicaciones distintas. Gracias a las tecnologías de integración, los distintos sistemas informáticos son capaces de comunicarse y compartir datos mediante la utilización de un lenguaje común.



TRANSACT-SQL

Transaste-SQL (T-SQL) es una extensión al SQL de Microsoft y Súbase. SQL, que frecuentemente se dice ser un Lenguaje de Búsquedas Estructurado (por sus siglas en inglés), es un lenguaje de cómputo estandarizado, desarrollado originalmente por IBM para realizar búsquedas, alterar y definir bases de datos relacionales utilizando estatutos declarativos. T-SQL expande el estándar de SQL para incluir programación procedural, variables locales, varias funciones de soporte para procesamiento de strings, procesamiento de fechas, matemáticas, etc, y cambios a los estatutos DELETE y UPDATE. Estas características adicionales hacen de T-SQL un lenguaje que cumple con las características de un autómata de Turing .
SQL es una extensión del lenguaje SQL, propiedad de Microsoft y Sybase. La implementación de Microsoft funciona en los productos Microsoft SQL Server. En tanto, Sybase utiliza el lenguaje en su Adaptative Server Enterprise, el sucesor de Sybase SQL Server.

Para hacer a SQL más poderoso, le fueron agregados algunas características como:
-Mejora en las declaraciones DELETE y UPDATE.
-Variables locales.
-Soporte de varias funciones para el procesamiento de cadenas, datos, matemática, etc.
-Un lenguaje de control de flujos.

Para el lenguaje de control de flujos utiliza palabras claves como BEGIN y END, BREAK, CONTINUE, GOTO, IF y ELSE, RETURN, WAITFOR y WHILE.



MICROSOFT TRANSACTION SERVER

Supone una poderosa herramienta para controlar y optimizar el rendimiento de nuestras aplicaciones de servidor.
Es un elemento de servidor que se integra totalmente con IIS para mejorar el rendimiento de las aplicaciones Web: Transaction Server. Lo podemos encontrar en el Windows NT 4.0 Option Pack, un paquete de aplicaciones que extienden la funcionalidad del sistema operativo Windows Nt 4.0 para convertirlo en un auténtico y operativo servidor en Internet.
Transaction Server es un producto que ya existía, pero que muy pocos desarrolladores conocían hasta ahora, escépticos ante la idea de adentrarse en el conocimiento de un enésimo producto Microsoft. Bien, es cierto que MTS es un elemento de servidor avanzado, pero ningún desarrollador de proyectos Web en entorno servidor Microsoft va a poder seguir ignorando el servidor transaccional.

MESSAGE QUEUE SERVER (MSMQ)

Ejecución remota de código en Message Queuing Service cuando validad de forme errónea cadenas de entrada antes de pasarlas a un buffer. Un intruso podría explotar esta vulnerabilidad construyendo un mensaje MSMQ creado de forma maliciosa que podría permitir la ejecución remota de código en un escenario de ataque remoto en Microsoft Windows 2000 Serve y una elevación de privilegios local en un escenario local en Microsoft Windows 2000 Professional and Windows XP.
Un atacante que explote satisfactoriamente esta vulnerabilidad podría tomar el control completo del sistema afectado. Un atacante debe tener credenciales de inicio de sesión validas para explotar la vulnerabilidad de elevación de privilegios en Microsoft Windows 2000 Professional y Windows XP. En Windows 2000 Server no necesita autenticarse en el sistema para ejecutar código de forma remota. Un atacante podría instalar programas; visualizar, cambiar o eliminar datos; o crear nuevas cuentas de usuario.
La tecnología Message Queue Server (MSMQ) permite que las aplicaciones que se ejecutan en distintos momentos se comuniquen a través de redes y sistemas heterogéneos que pueden estar sin conexión temporalmente. MSMQ proporciona entrega de mensajes garantizada, enrutamiento eficaz, seguridad y mensajería basada en la prioridad. Se puede usar para implementar soluciones para escenarios de mensajería asincrónicos y sincrónicos.

COMUNICACIÓN ASINCRÓNICA

Es aquella comunicación que se establece entre dos o más personas de manera diferida en el tiempo, es decir, cuando no existe coincidencia temporal. Un ejemplo antiquísimo de comunicación asincrónica es la carta de papel; actualmente es un tipo de la comunicación desarrollada mediante ordenadores o computadores. Ejemplos actuales de la comunicación asincrónica son el mail o correo electrónico y foros.
Es la conexión que se establece entre el cliente y el servidor que permite la transferencia de datos no sincrónica, o sea el cliente puede realizar varias peticiones al servidor sin necesidad de esperar por la respuesta de la primera.
El uso de las conexiones asíncronas para la transmisión de datos está justificado en gran medida por la facilidad que brinda de realizar peticiones y obtener respuestas del servidor sin necesidad de recargar la página web, esto permite que el sitio web gane en velocidad reduciendo el consumo de ancho de banda. De esta forma es posible realizar cambios sobre las páginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones.

En la comunicación asincrónica observamos que algunos de elementos típicos de la comunicación presentan unas características específicas y diferenciales:
·         Emisor: El emisor envía la información sabiendo que no obtendrá una respuesta inmediata.
·         Receptor: Este será consciente de la llegada del mensaje solo cuando acceda al canal específico.
·         Canal: Es el medio físico acordado por ambas partes por el que se transmite el mensaje, debe ser perdurable en el tiempo ya que el mensaje se almacena allí durante un tiempo indefinido.
·         Código: No puede ser efímero y debe poder almacenarse en un soporte físico.



Arquitectura SMP


El enfoque más sencillo para una máquina con múltiples procesadores es el esquema SMP (Symmetrical Multiprocessing, multiproceso simétrico). Una arquitectura SMP es básicamente una expansión de una arquitectura tradicional pero con la adición de varios procesadores que comparten todos los demás recursos del sistema (memoria principal, almacenamiento secundario, periféricos de entrada y salida). En esta arquitectura no se establece distinción entre los procesadores; todos son jerárquicamente iguales y pueden ejecutar tareas indistintamente. De esta característica viene el nombre de ``simétrica''. Un diagrama de una arquitectura SMP .


En general una arquitectura SMP tiene un equivalente en uniprocesador, y naturalmente un sistema SMP puede ejecutar simultáneamente varios programas o aplicaciones, que normalmente podrían ejecutarse en el sistema uniprocesador, de manera independiente. Sin embargo, para el uso de aplicaciones que aprovechen los múltiples procesadores para expeditar la realización de cálculos, nos interesa que dichos procesos no sean totalmente independientes, buscando entonces que cuenten con manera de comunicarse para distribuirse información, compartir y consolidar resultados.
Ya que un sistema SMP los procesadores comparten todos los periféricos y recursos, el esquema más obvio para comunicarse en una arquitectura SMP es el uso de memoria compartida. Como el nombre lo indica, en este esquema los procesadores tienen acceso a un espacio de direcciones común; esto puede ser todo el espacio de direcciones o únicamente un área designada para memoria compartida, permitiendo a cada proceso contar con un área exclusiva para sus requerimientos.



Arquitectura MPP


Ya que el problema es el hecho de contar con memoria compartida y sus limitaciones, se propuso un esquema de una máquina paralela que consta de varias unidades de procesamiento básicamente independientes. En efecto cada una de estas unidades, conocida como ``nodo'', es prácticamente una computadora en sí misma, contando con su propio procesador, memoria no compartida, y que se comunica con las demás unidades de procesamiento a través de un canal provisto exclusivamente para este propósito. Este tipo de máquinas se conocen como computadoras masivamente paralelas o máquinas MPP (Massively Parallel Processing, procesamiento masivamente paralelo). Un diagrama de una arquitectura MPP .
Una máquina MPP presenta una serie de consideraciones importantes derivadas de su arquitectura, que se deben tomar en cuenta al escribir programas que pretendan aprovechar su naturaleza multiprocesador. Obviamente la característica más importante es el hecho de que, en cada nodo, cada procesador opera básicamente como una computadora independiente, ejecutando su propio código independiente de los demás procesadores, y teniendo un área de memoria con datos también independientes.
Desde luego, para que esta organización redunde en un mayor desempeño, se requiere colaboración entre los nodos. Como se mencionó, una máquina MPP debe contar con un canal que permita a los nodos comunicarse entre sí, a fin de intercambiar datos y coordinar sus operaciones. Ya que el objetivo principal de una máquina MPP es obtener alto rendimiento, se busca que este canal de comunicaciones sea lo más eficiente posible, en términos tanto de ancho de banda como de tiempo de latencia. En la mayoría de los casos este canal será un bus propietario, diseñado por el fabricante del equipo MPP.




 

Exposición: Análisis Costo- Beneficio orientado a la compra de equipo de cómputo



El análisis costo beneficio es una técnica para la elección del mejor plan y obtener los mejores resultados del mismo mediante, la comparación de alternativas en términos de ventajas generales




Ventajas del análisis de costo-beneficio
       El análisis de costo-efectividad o el de costo utilidad no nos dice si vale la pena realizar los programas bajo la premisa de los costos de oportunidad, para ello es necesario invocar a un elemento externo.
       El análisis de costo-beneficio nos da una regla de decisión directa.




Ventajas del análisis de costo-beneficio
       El análisis de costo-efectividad o el de costo utilidad no nos dice si vale la pena realizar los programas bajo la premisa de los costos de oportunidad, para ello es necesario invocar a un elemento externo.
       El análisis de costo-beneficio nos da una regla de decisión directa.

Ventajas
Desventajas
Comprar
       A largo plazo, más económico que rentar.
       Posibilidad de cambiar el sistema
       Ofrece ventajas fiscales al permitir la depreciación acelerada
       Control total
       El costo inicial es elevado
       Riesgo de caer en la obsolescencia
       Riesgo de atarse a una elección errónea
       Plena responsabilidad
Renta con opción a compra
       El capital no queda atado
       No se requiere de financiamiento
       El pago es menor que la renta simple
       La compañía no es dueña del sistema cuando expira el contrato de alquiler
       Por lo general hay una multa muy alta por terminar anticipadamente el contrato
       El alquiler es mas caro que la compra
Rentar
       El capital no queda atado
       No se requiere financiamiento
       Facilidad de cambio de sistema
       Por lo general incluye el mantenimiento y seguros
       La compañía no es dueña del equipo
       Los costos son muy altos porque el proveedor asume el riesgo (es la alternativa mas cara)
Adquisición de equipo de cómputo


Evaluación del soporte del vendedor al equipo de cómputo
  1. Línea completa de productos
  2. Soporte del equipo
  3. Soporte del software
  4. Instalación y adiestramiento
  5. Mantenimiento

Identificación de costos y beneficios
Beneficios tangibles:
       El incremento en la velocidad de proceso
       Contar con cierta información que de otra manera seria inaccesible
       La obtención de información con mayor puntualidad que en el pasado
       Aprovechar el mayor poder de cálculo de las computadoras
       Reducir el tiempo requerido por los empleados para concluir una tarea especifica
Beneficios intangibles:
       La mejora del proceso de toma de decisiones
       El incremento de precisión
       El llegar a ser más competitivo en los servicios al cliente
       El mejoramiento de la imagen del negocio
       El incremento de la satisfacción de los empleados al eliminar tareas de naturaleza tediosa.

Identificación y pronóstico de los costos y los beneficios
Los costos y los beneficios del sistema propuesto de cómputo siempre deben considerarse en conjunto, ya que se interrelacionan y con frecuencia dependen entre sí.

 

ANALISIS COSTO


Al realizar un pequeña visita a la presidencia municipal de ixmiquilpan nos percatamos de que esta institución no cuenta con los recursos necesarias para brindar un buen servicio a los ciudadanos, ya que  esta institución solo cuenta con un aproximado de 105 computadoras las cuales están en distribuidas en sus distintas secretarias con las que cuenta la presidencia municipal, comparten lo que son las impresoras las cuales solo cuentan con 30 impresoras que igual están una en cada secretaria y las cuales doto el personal comparten impresoras y manejan lo que es archivo físico porque no cuenta con un servidor propio cuenta con lo que es una página web la cual la tiene almacenada en un servidor en el cual pagan lo que es la renta de este servidor por mantener alojada aquí su página web.
Al obtener esta información nos dios cuenta que la presidencia municipal no cuenta con la organización suficiente para brindar un mejor servicio a la sociedad  también necesita modernizar lo que son sus equipos de cómputo para tener su información con la cual cuenta en mejores condiciones.
De acuerdo con un análisis de la información brindada se llego a la conclusión de que sería recomendable, primero que nada que la Presidencia tuviera una buena comunicación y organización entre el personal que labora ahí, para que con ello se logre brindar un mejor servicio a la gente,  además deberían tener una servidor propio ya que el rentar el servicio a largo plazo es más caro el rentar y la información podría tener riesgo de ser modificada y o infiltrada.
Tener personal capacitado para el manejo de equipos de cómputo como del mantenimiento de los mismos, a fin de que solo ellos puedan manejar su información y sea mucho más seguro.
El uso de las impresoras para la generación de archivos físicos resulta muy costosa, para ello lo más conveniente en este caso pude ser que los archivos que generen los almacenen ya sea en un disco duro o en los equipos de cómputo disponibles, para  que así si posteriormente se requieren hacer cambios en el documento no tenga que volver a imprimir y así evitar el desperdicio de insumos.

Tipo de arquitectura
Esta institución no cuenta con ningún tipo de arquitectura ya que no cuentan con un servidor  y solo manejan lo que son archivos físicos y sus computadoras no cuentan ni con un cable de red para que puedan compartir información entre ellos.
Les recomendamos utilizar la estructura  SMP  ya que esta estructura  cuenta con varios procesadores que comparten todos los demás recursos del sistema como memoria principal, almacenador secundario  periféricos de entrada y salida además de que esta arquitectura comparte una sola memoria  o procesador ya que esto puede ejecutar varios programas y aplicaciones a su vez , como conclusión esta  arquitectura les sería indispensable para la presidencia ya necesitan tener en orden sus archivos y programas.

Reporte

Instalación de Windows server 2003 & SQL SERVER 2008


INTRODUCCION
La recomendación para cuando vamos a probar software nuevo es usar máquinas de laboratorio o también usar máquinas virtuales. En nuestro caso, trabajamos con una máquina virtual ejecutada por Virtual Box.
En términos generales, Windows Server 2003 se podría considerar como un Windows XP modificado para labores empresariales, no con menos funciones, sino que estas están deshabilitadas por defecto para obtener un mejor rendimiento y para centrar el uso de procesador en las características de servidor por lo que sólo se utiliza la interfaz clásica de Windows.
El lenguaje de consulta estructurado o SQL es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas. Una de sus características es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar de forma sencilla información de interés de bases de datos, así como hacer cambios en ella.
El uso y la compatibilidad de estos dos softwares son una convinacion muy efectiva para el uso de bases de datos y su manejo. Demuestra la confiabilidad por la cual puede ser usada en el ambito laboral, empresarial y tecnica.


Conclusión
El trabajo realizado, nos permitió ver de otra manera distinta la instalación de SQL 2008 en Windows Server 2003, en comparación con otra versión de Windows, por lo que buscamos que este fuese compatible con la versión a instalar ya que por la diferencia de versiones es difícil que estos sean compatibles y de la misma manera puedan cumplir con los requisitos, algo muy importante a destacar es que la funcionalidad que tiene la versión en SQL 2008 en el sistema operativo de Windows 2003 no varia nada a las demás versiones de Windows, ya que tiene la misma funcionalidad, a pesar de que esta versión de SQL 2008 tiene unas mejoras en comparación con la versión, pero esto no hace que sea imposible realizar la instalación de SQL 2008 en WINServer2003. 


jueves, 20 de septiembre de 2012

Conexión de java y SQL server 2008 mediante JDBC


SQL server 2008
SQL Server 2008 proporciona una infraestructura escalable que une a la tecnología de la información con la inteligencia de negocio en todas las áreas de su organización y derivar la inteligencia donde los usuarios la necesitan.
Provee una comprensiva visión de los negocios a través del incremento de datos frescos, incorporando todos los sistemas y validando los mismos mientras reduce la carga en el departamento IT. Tiene  motor de base de datos escalable y de alta performance ideal para misiones críticas de aplicaciones. Esto requiere del mejor nivel de disponibilidad y seguridad mientras se reduce el costo total de autoría mediante la mejora del manejo de su empresa.
La programabilidad de datos de la plataforma Microsoft provee a desarrolladores con un excelente marco de acceso a la programación, servicios web y tecnología de conectividad de datos, así como a la posibilidad de manejar diferentes paquetes de datos. SQL Server 2008 reduce los costos de mantenimiento y de hardware proveyendo un server flexible. De este modo consolida soluciones pensadas para el mejor manejo de la performance de su empresa.

Java
Java es un lenguaje de programación de alto nivel orientado a objetos, desarrollado por James Gosling en 1995. El lenguaje en sí mismo toma mucha de su sintaxis de C, Cobol y Visual Basic, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria. La memoria es gestionada mediante un recolector de basura.
Las aplicaciones Java están típicamente compiladas en un bytecode, aunque la compilación en código máquina nativo también es posible. En el tiempo de ejecución, el bytecode es normalmente interpretado o compilado a código nativo para la ejecución, aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible.
Java es un lenguaje de programación orientado a objetos que fue creado por la compañía Sun Microsystems en 1995. El origen del nombre Java no está claro, aunque se atribuye a un tipo de café que estaba disponible a una cafetería cercana al lugar de trabajo del equipo que lo desarrolló. El nombre original de Java era Oak, pero que tuvo que ser cambiado por que el nombre ya estaba registrado por otra compañía. La plataforma se puede descargar de forma gratuita y hoy en día Java se ejecuta en cientos de millones de computadoras personales de todo el mundo y en miles de millones de dispositivos, como lo son los dispositivos móviles, aparatos de televisión, aparatos especializados y consolas de juegos.


Controlador JDBC
Software que permite a las aplicaciones escritas en Java interactuar con una base de datos.

Para conectar con bases de datos individuales, JDBC requiere controladores para cada base de datos. El controlador JDBC ofrece la conexión a la base de datos e implementa el protocolo para la transferencia de las consultas y resultados entre el cliente (aplicación) y la base de datos.
El controlador JDBC de Microsoft SQL Server 2005 es un controlador compatible con Java Database Connectivity (JDBC) 3.0 que proporciona un acceso confiable a los datos de las bases de datos de Microsoft SQL Server 2000 y SQL Server 2005. El controlador JDBC puede tener acceso a muchas de las características nuevas de SQL Server 2005, incluidas la creación de reflejo de la base de datos y tipos de datos XML, definidos por el usuario y de gran valor; asimismo, es compatible con el nuevo tipo de cursor de aislamiento de instantánea. Además, el controlador JDBC admite el uso de la autenticación integrada con SQL Server 2000 y SQL Server 2005.
Una de las operaciones más importantes que realizará con el Controlador JDBC de Microsoft para SQL Server es establecer una conexión con una base de datos de SQL Server. Todas las interacciones con la base de datos tienen lugar a través del objeto SQLServerConnection y, debido a que el controlador JDBC posee una arquitectura tan plana, casi todos los comportamientos interesantes afectan al objeto SQLServerConnection.
Si SQL Server solo está realizando escuchas en un puerto IPv6, establezca la propiedad del sistema java.net.preferIPv6Addresses para asegurarse de que se utiliza IPv6 en lugar de IPv4 para conectar a SQL Server:
·         System.setProperty("java.net.preferIPv6Addresses", "true");
En los temas de esta sección se describe cómo establecer y trabajar con una conexión a una base de datos de SQL Server.

Conexión de SQL server 2008 y Java mediante JDBC

Para establecer una conexión de base de datos SQL Server mediante NetBeans 7.0.1 a través de JDBC habrá que seguir los siguientes pasos en un sistema operativo Windows:
1. Descargarse el driver oficial de Microsoft SQL Server JDBC desde el siguiente enlace.
2. Una vez descargado, hay que establecer en las propiedades de nuestro proyecto el driver (Libraries> Compile) y pulsar sobre añadir JAR/Carpeta.

3. Buscar el archivo 'sqljdbc.jar' y seleccionarlo.
En estos tres pasos habremos establecido nuestro driver sql server para nuestro proyecto, de manera que ya se podrá establecer la conexión contra SQL Server a través de JDBC:
1. Importar la librería java.sql.*;
2. Establecer la cadena de conexión y demás parámetros:


public static void main (String args[]){
Coneccion co=new Coneccion();
}
}
try {
          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
          String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
            "databaseName=Northwind;user=sa;password=123456;";
          Connection con = DriverManager.getConnection(connectionUrl);
        } catch (SQLException e) {
            System.out.println("SQL Exception: "+ e.toString());
        } catch (ClassNotFoundException cE) {
            System.out.println("Class Not Found Exception: "+ cE.toString());


}








Hecho  por: Brenda Martinez Silis 
grupo: 4E de TIC
UTVM