Foros del Web » Programación para mayores de 30 ;) » Programación General »

Duda con módulo DBI

Estas en el tema de Duda con módulo DBI en el foro de Programación General en Foros del Web. Monoswin: Me gustaría saber si el módulo en cuestión es realmente una interfaz hacia diversas bases de datos o sea que el código es genérico ...
  #1 (permalink)  
Antiguo 12/03/2005, 08:30
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
Duda con módulo DBI

Monoswin:

Me gustaría saber si el módulo en cuestión es realmente una interfaz hacia diversas bases de datos o sea que el código es genérico para cualquier base de datos como dice en este artículo.

Si DBI es una interfaz hacia diversas bases de datos y lo único que tenemos que cambiar es el controlador en una línea de código entonces creo que me decantaré a realizar un proyecto de la empres en la que trabajo bajo perl y creo que será así por lo que ví tambien en este otro articulo porque hacer una migración futura hacia otra base de datos será realmente un acontecimiento minúsuclo al solamente tener que cambiar una línea de código.

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”

Última edición por Koveart; 12/03/2005 a las 08:48
  #2 (permalink)  
Antiguo 12/03/2005, 12:33
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 9 meses
Puntos: 90
Claro que si, el Módulo DBI te conecta a la base de daos que quieras con solamente cambiar el Driver en la conexión...

Pero ten cuidado que no todas las bases de datos soportan las mismas sentencias SQL, por ejemplo Hay cosas que puedes hacer en PosgreSQL (como transaciones) que MySQL no las soporta, pero no es un problema del DBI sino que el motor de bases de datos no lo soporta.

Yo tengo un programa con SQL común y me sirvió hasta para usarlo en un acces, sin tener que cambiar nada más que el Driver...

Es realmente muy bueno eso, te ahorra mucho trabajo...

Saludos y suerte con el proyecto...
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 12/03/2005, 21:10
 
Fecha de Ingreso: mayo-2003
Mensajes: 328
Antigüedad: 21 años, 6 meses
Puntos: 0
Hola Koveart:

Efectivamente como dices, el DBI es una interface con la cual te conectas a los "drivers" dependiendo del database que quieras usar.

Sin embargo, aunque se parecen mucho los statements de algunas bases de datos, es algo que tienes que tener en cuenta si deseas migrar tu código para usar otras bases de datos, es por ello que debes de buscar que sean lo más globales posibles los statements.

Para más detalles del DBI, te recomiendo que leas su documentación:
http://search.cpan.org/~timb/DBI-1.47/DBI.pm

SALUDOS
__________________
Uriel Lizama, Perl Developer

Aprende Perl en Perl en Español.
  #4 (permalink)  
Antiguo 13/03/2005, 11:08
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
Pero por ejemplo examino el funcionamiento de perl en referencia a lo que sería una migración de bases de datos con php.

Desde luego lo que uno quiere es que la migración sea lo menos traumática posible debido a que realizar una gran labor con el código se puede desbaratar si te dicen que van a cambiar las bases de datos. en referencia a esto obviamente no todos los statements quedarán pero si uno piensa que más del 80% o más statements quedarán intactos el trabajo que uno se ahorra es realmente importante y significativo.

saludos y Gracias.

P.D.: Uriel desde luego que gran página de referencia que tienes. Felicitaiones
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:35.