Anda di halaman 1dari 3

c 


    

c    


                 
         
  probablemente el API más extendido para el acceso a bases de datos relacionales.

    

› „  está escrito en .
› ¦l gestor de drivers „  y el propio driver han de ser instalados en todos los
ordenadores
› c  está escrito en cava y permite obtener aplicaciones completas en cava (100% pure
java)
› usando „  en  grandes, el rendimiento puede disminuir al convertir llamadas cava a
 y viceversa

G   
c 

› „rece la posibilidad de conectar a la mayoría de las bases de datos en casi todas las
plataormas.
› Inclusive se puede usar „  para conectar bases de datos desde cava.
› Por ser probablemente el API más extendido para el acceso a bases de datos relacionales,
por comodidad muchos preieren optar por su uso.

u   c 




Si se está manejando base de datos desde java la mejor opción para conectarse a esos datos y
administrarlos es empleado un puente c „  por las siguientes razones:

› 
                   c            ÿas
llamadas desde cava a código nativo  tienen un número de inconvenientes en la
seguridad, la implementación, la robustez y en la portabilidad automática de las
aplicaciones.
›
     ! c     cG
Por ello „  es una API basada en procedimientos que hace un uso intensivo de
punteros, mientras que c  es una interaz orientada al objeto. ¦s decir, mientras en
„  se trabaja con manejadores (handlers) y llamadas a la API, en c  se trabaja con
objetos (o clases), interaces y métodos.
›
   "  . Mezcla características simples y avanzadas juntas, y sus
opciones son complejas para ͚querys͛ simples. c  por otro lado, ha sido diseñado para
mantener las cosas sencillas mientras que permite las características avanzadas cuando
éstas son necesarias.
› [c   ! c      !  #c  $ %uando se
usa „ , el gestor de drivers de „  y los drivers deben instalarse manualmente en
cada máquina cliente. omo el driver c  está completamente escrito en cava, el código
c  es automáticamente instalable, portable y seguro en todas las plataormas cava.
› c   &' !   !   „  deine una serie
de unciones que se dividen en tres niveles de conormidad, cada uno de los cuales incluye
un grupo de estas. ¦l problema es que no todos los drivers existentes cumplen por igual
estos niveles, y por tanto las aplicaciones han de tener en cuenta el nivel de conormidad
del driver con el que están trabajando para saber que unciones pueden utilizar. Por el
contrario, todo driver c  ha de pasar una serie de tests para conirmar que cumple con
el ANSI SQÿ  ¦ntry ÿevel, que deine el mínimo común denominador entre cualquier
SG  SQÿ del mercado. ¦sto quiere decir que debe implementar todas las clases e
interaces abstractas que deine el paquete java.sql, lo cual nos garantiza que cualquier
aplicación que escribamos utilizando c  podrá trabajar con cualquier SG del mercado
sin limitaciones.
›
        ÿos drivers „  han de trabajar junto con los drivers
nativos del sistema gestor de base de datos, mientras que c  no.

¦n resumen, el API c  es el interace natural de cava para las abstracciones y conceptos básicos
de SQÿ. c  retiene las características básicas de diseño de „  de hecho, ambos interaces
están basados en el X/„pen SQÿ ÿI (all ÿevel Interace).
Más recientemente, Microsot ha introducido nuevas API detrás de „ . R „, A „ y „ÿ¦ .
¦stos diseños se mueven en la misma dirección que c  en muchas maneras, puesto que se les
da una orientación a objeto basándose en clases que se implementan sobre „ .

  "  c     

SUN decidió seguir una serie de normas a seguir para la deinición del interaz del c , y
que han condicionado en gran manera el resultado inal. Algunas de estas características son:

›   (G  &). c  es un API de bajo nivel, es decir, que está orientado a permitir
ejecutar comandos SQÿ directamente, y procesar los resultados obtenidos. ¦sto supone
que será tarea del programador crear APIs de más alto nivel apoyándose directamente
sobre c .
› 
*+ 
(&) ada motor de ase de atos implementa una amplia variedad de
comandos SQÿ, y muchos de ellos no tienen porque ser compatibles con el resto de
motores de ase de atos. c , para solventar este problema de incompatibilidad, ha
tomado la siguiente posición
à c  permite que cualquier comando SQÿ pueda ser pasado al driver
directamente, con lo que una aplicación cava puede hacer uso de toda la
uncionalidad que provea el motor de ase de atos, con el riesgo de que esto
pueda producir errores o no en unción del motor de ase de atos.
à on el objetivo de conseguir que un driver sea compatible con SQÿ (SQÿ
compliant), se obliga a que al menos, el driver cumpla el ¦stándar ANSI SQÿ .
› c              , o más en
particular „  („pen atabase onnectivity)
› c   , ! -. al resto de APIs de cava.
› c   !, y desde ahí, ir creciendo.
› c   !       !             !/   
 :
à Mantener la sencillez en los casos más comunes (S¦ÿ¦, INS¦R, ¦ÿ¦¦ y
UP A¦)
à acer realizables los casos menos comunes: Invocación de procedimientos
almacenados.
›   !0  !.      !0    . c  ha preerido incluir gran
cantidad de métodos, en lugar de hacer métodos complejos con gran cantidad de
parámetros.

Anda mungkin juga menyukai