Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-11-2010
calcena calcena is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 19
Poder: 0
calcena Va por buen camino
Base de Datos Access

Buenos dias, soy nuevo, hace mucho que trabajé con Delphi y quiero volver a entrar en el tema (supongo que Delphi tendrá futuro) lo que si tengo claro es que es mas portable que muchos otros lenguajes.
A lo que vamos, tengo un proyecto de unos 200.000 registros en Access y me gustaria migrarlo a lenguaje Delphi. Alguien me podria dar una pequeña guia de como utlizar una grid como visual para ver los datos y poder insertar, modificar datos ...etc....se puede utilizar sentencias SQL?

Gracias por vuestras orientaciones
Responder Con Cita
  #2  
Antiguo 25-11-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Hola Calcena y bienvenido a los foros.

Supongo que cuando dices que lo tienes en Access, te refieres a que los formularios, listados y demás están hechos en Access.
Para pasar eso a Delphi, lo priemro que debes pensar es si quieres mantener como Base de Datos Access y cambiar sólo formulario y listados o deseas cambiar también de Base de datos.

Access lo bueno que tiene es que es portable. Para monopuesto y si no tienes mucha exigencia te puede ir bien. Además puedes aprovechar las consultas creadas en el propio Access.

Si tienes dudas de la capacidad, puedes obtar por un SGBD más serio. SQL Server Express, FireBird (si necesitas que sea portable), MySQL,...

Para acceder a una Base de Datos MDB (de Access) desde Delphi debes utilizar los componentes de la paleta ADO.
TADOConnection, para la conexión y TADOTable y TADOQuery para acceder a las tablas o para lanzar consultas.

Puedes consultar ejemplos del uso de ADO que puedes encontrar en el FTP de clubDelphi y también en el directorio de Demos que viene con Delphi.

Puedes mantener las consultas que tienes en Access (si es que tienes muchas) y para acceder a ellas puedes usar el componente TADOStoredProc.

También puedes revisar esta página; Ahí puedes ver paso a paso cómo crear un formulario con un Grid que accede a Datos utilizando ADO. Lo unico diferente es que ahí se accede a SQL Server y en tu ADO Conection debes configurar Access, pero lo demás es exactamente como está ahí.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 25-11-2010
calcena calcena is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 19
Poder: 0
calcena Va por buen camino
guauuuuu

Impresionante Neftali, muchas gracias tanto por tu pronta respuesta, así como por lo completo de tu respuesta que abarca tanto lo que he preguntado como cosas que estaban ahi en el aire sin escribir ...el tema Firebird me comentas que es portable que tal firebird? nunca lo he usado, dificl, facil, opinion que te merece?
El tema de access lo tengo todo programado desde access mediante codigo VBAcess (que viene siendo Visual Basic)
Pero lo unico que queria aprovechar para hacer portable son las tablas, nada mas, Ves oportuno que migre a firebird?. La idea es el programa en un pen y poder consultarlo en cualquier pc, dentro de una carpeta estaria la BD.

Gracias compañero
Responder Con Cita
  #4  
Antiguo 25-11-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Hola Calcena.
Es una decisión difícil sin saber exactamente cómo es tu programa y qué necesidades tiene.

Access es una Base de Datos de escritorio, FireBird es un SGBD (Sistema Gestor de Bases de Datos). La potencia de ambos no es comparable.
* Si tu programa necesita mucha potencia o maneja gran cantidad de datos, opta por FB.
* Si tienes diudas opta por FB.
* Si tu sistema es sencillo y no tiene grandes requerimientos en cuanto a los datos puedes probar con Access.

Puedes hacer unas pequeñas pruebas con Access, más que nada para adaptarte al entorno y a realizar las conexiones.
Posteriormente puedes cambiar a FB, aunque los componentes son diferentes, la forma de conectarlos en visual y de utilizarlos es similar.

Con FB tendrás a priori más complicaciones, hasta que te acostumbres. Al ser un SGBD necesitas instalarte un Servidor. Trabajaras con él para crear la Base de Datos, las tablas (IBExpert versión Free es una buena opción para estas tareas -puedes descargarlo de la página o del FTP del Club-).

En la versión final, puedes usar esa Base de Datos con la versión Embebded de FireBird. Que no es más que, en lugar de instalar el servidor, copiar unas DLL's en el directorio de programa.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 25-11-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
* Si tu sistema es sencillo y no tiene grandes requerimientos en cuanto a los datos puedes probar con Access.
Incluso en este caso mejor optar por Firebird es su version Embedded. Con Access se ata uno a Windows y el M$ jet tan bugueado.
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #6  
Antiguo 26-11-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Delfino Ver Mensaje
Con Access se ata uno a Windows y el M$ jet tan bugueado.
Con Delphi se ata uno a Windows, así que el tema de Access tal vez sea lo de menos en este caso.

Cita:
Empezado por Delfino Ver Mensaje
el M$ jet tan bugueado.
No se a qué bugs te refieres; ¿Puedes explicarte? Llevo utilizando Jet4 muchos años y siempre me ha funcionado perfectamente o no me he enterado.
¿Tiene muchos bugs?
¿Cuales?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 26-11-2010
Avatar de Estifmauin
Estifmauin Estifmauin is offline
Miembro
 
Registrado: may 2008
Ubicación: Alicante
Posts: 24
Poder: 0
Estifmauin Va por buen camino
Estoy con Delfino.
Firebird Embedded es lo que buscas. Tan sólo debes copiar unas pocas dlls en la carpeta del exe y a correr. Y si luego necesitas acceso multiusuario, el mismo fichero te vale (sin cambiar nada).
Para migrar los datos de una a otra, existen herramientas, aunque puedes hacer un programita que lo haga con 2 conexiones ADO.
Responder Con Cita
  #8  
Antiguo 26-11-2010
calcena calcena is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 19
Poder: 0
calcena Va por buen camino
Y DbISAM??

Buenas de nuevo, tengo un compañero que programa bastante con delphi y me ha recomendado DBISAM yo como no tengo ni idea con este sistema me gustaria que me comentarais que opinais.
Despues otro tema, mi proyecto es una filmoteca para archivar mis peliculas, juegos etc, la cuestión es que éste compañero ha realizado un proyecto, y tiene un componente que según él, descarga el codigo de una pagina web para por ejemplo en mi caso, descargar para una pelicula, el argumento, caratula, director .etc...Sabeis como se llama este componente y como podria hacer esto?
Gracias.
Responder Con Cita
  #9  
Antiguo 27-11-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Con Delphi se ata uno a Windows, así que el tema de Access tal vez sea lo de menos en este caso.
Si pero, en caso de cliente/servidor puedes poner la BD en un servidor Linux..
Cita:
Empezado por Neftali Ver Mensaje
No se a qué bugs te refieres; ¿Puedes explicarte?
Una busqueda en google y te sale de todo.

Despues de 8 service packs ahora esta mas estable. Pero a los inicios si q tenia muchos y a mi era lo q me hizo tener alergia a los producots M$, en este caso era Access..
__________________
¿Microsoft? No, gracias..

Última edición por Delfino fecha: 27-11-2010 a las 19:28:25.
Responder Con Cita
  #10  
Antiguo 29-11-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Delfino Ver Mensaje
Si pero, en caso de cliente/servidor puedes poner la BD en un servidor Linux...
Correcto, pero creo que en ningun caso se ha mencionado esa premisa, o yo no la he leído.

Cita:
Empezado por Delfino Ver Mensaje
Una busqueda en google y te sale de todo.
Llevo muchos años trabajando con Jet4 y nunca he tenido ningun problema, siempre y cuando se use para lo que está diseñado.
Todos los proyectos tienen bugs (y no seré yo el que va a defender los proyectos de MS), pero Access y en general Office nunca se han destacado por ser proyectos con muchos bugs, a diferencia de otros de la misma casa.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #11  
Antiguo 29-11-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Llevo muchos años trabajando con Jet4 y nunca he tenido ningun problema, siempre y cuando se use para lo que está diseñado.
Y que son los argumentos que te han mantenido tanto tiempo con esa plataforma?

En otras palabras, que es lo que te hace no cambiar a Firebird?
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #12  
Antiguo 29-11-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Delfino Ver Mensaje
Y que son los argumentos que te han mantenido tanto tiempo con esa plataforma?
Como ya he dicho, creo que cada Base de Datos tienes sus propiedades y su "segmento"; Ni Access es lo mejor para todas las cosas, ni FB es lo mejor para todas, tampoco.

* Cuando yo empecé a programar con D5+ADO no se ni si existía la versión Embebded de FB.
* Access es una solución muy buena para programas locales sin grandes pretensiones.
* Muy fácil de desarrollar y de "portar", pues sólo hace falta 1 fichero MDB junto al EXE. En comparación con otras soluciones "locales" (como era en aquel tiempo el BDE) la sencillez y el rendimiento que ofrecía era mucho mayor, ya no digo otras soluciones que requerían un server.
* Hace tiempo que no trabajo seriamente con FB, pero te aseguro que cuando empecé con D5 no era precísamente estable. Recuerdo que 1 de cada 3 veces que se colgaba el servidor la BD quedaba irrecuperable (y cuando digo irrecuperable significa eso exactamente).
* Jet4 tiene una característica muy buena para determinados clientes; Aquellos que poseen Access y se desenvuelven mínimamente con él, pueden crear sus propias consultas y sus propios listados, pueden exportar sus datos, e incluso algunos (los más mañosos) llegaban a conectarlo con Excel y generaban sus estadísticas y gráficos. Todo ellos aprovechando los datos de tu aplicación. Esto es una característica que con otras Base de Datos era imposible (sin tener que utilizar módulos o programación extra).

Podrías seguir, pero creo que la idea ya la he comentado aquí otras veces, no estoy defendiendo Access como mejor que FB; Si es eso lo que piensas te equivocas.

Lo que pretendo decir es que creo que Access puede ser más adecuado que FB, SQL Server u Oracle para algunos proyectos. Al igual que para otros será más adecuado FB.

FB es un Sistema Gestor de Bases de Datos y Jet4+MDB simplemente es un motor de escritorio. En algunas ocasiones FB puede ser "demasiado" (complejo, costoso, potente,...) para una aplicación pequeña.

Un saludo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #13  
Antiguo 03-12-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Jet4 tiene una característica muy buena para determinados clientes; Aquellos que poseen Access y se desenvuelven mínimamente con él, pueden crear sus propias consultas y sus propios listados, pueden exportar sus datos, e incluso algunos (los más mañosos) llegaban a conectarlo con Excel y generaban sus estadísticas y gráficos.
Efectivamente esa es la principal atracción de Access: poder usar sus datos en Excel, Word y otras herramientas del Office dnd M$ tiene un monopolio casi igual q el del Windows.
Cita:
En algunas ocasiones FB puede ser "demasiado" (complejo, costoso, potente,...) para una aplicación pequeña.
Si dices esto es q no conoces bien a Firebird. La dll de la versión Embedded ocupa 2 mb y pico y es todo lo q se necesita para hacer una aplicación de escritorio con miles de miles de datos..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Base de Datos en Access con Pass Er0s Conexión con bases de datos 2 22-10-2010 01:28:42
Base de Datos en Access en Red janexa Conexión con bases de datos 1 28-03-2008 18:49:30
base de datos access en Red Nbull Conexión con bases de datos 5 13-01-2006 13:31:49
Instalador y Base de Datos en Access ¥0n1 Conexión con bases de datos 4 17-05-2004 17:13:01


La franja horaria es GMT +2. Ahora son las 10:09:47.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi