Jump to content


Photo

Visualizar datos y modificarlos (BD Firebird + Delphi 7) Componentes IBX


  • Please log in to reply
3 replies to this topic

#1 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 11 September 2011 - 01:11 PM

saludos c

Ya que siguiendo el tutorial de caral, he hecho la conexión de una BD Firebird con Delphi 7 y usando IBExpert como lo dice en el tutorial, tengo estas preguntas.

Cuáles componentes de los del grupo InterBase (IB) puedo usar para Visualizar los datos y modificarlos usando un DBGrid y un DBNavigator ?

Cómo hago la conexión del DBGrid con la tabla USUARIOS de la BD que ya hice con el programa IBEXpert ??

alguien esta dispuesto a explicarme los pasos ?

Me imagino que al igual que con ADO, hay que usar el componente Datasource


  • 0

#2 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6295 posts
  • LocationArgentina

Posted 11 September 2011 - 01:33 PM

Hola,
¿Ya estuviste leyendo la Cara Oculta de D4? ¿En los capítulos en donde habla sobre los DataSource, y los componentes data-ware?

Creo que tienes unas confusiones mentales, ¡un tutti frutti de cosas! Pongamos orden:

Todas las suites de componentes de conexión: ADO, IBX, DBX, etc. son abstracciones de los elmentos de una base de datos:

Los componentes xxxConecction son las abstracciones de las conexiones que se establecen con una base de datos. Como así también los xxxTable son la abstracción  de Tablas y los xxxQuery son las abstracciones de consultas (o en sentido más general, de un conjunto de datos), los xxxStoreProc son las abstracciones de los Procedimientos Almacenados; etc.

Ninguno de éstos te muestran y sirven para mostrar los datos. Simplemente están hechos para trabajar con la base de datos. Aquí es donde aparecen los DataSource.
El DataSource, o fuente de datos, hace de puente o intermediario entre los componentes visuales, los data-ware, y los componentes de acceso de datos.

Los data-ware como los DBEdit, DBGrid, DBNavigator, etc. simplemente se encargan de mostrar los datos que los componentes de acceso les traen... de allí que se los llame a estos últimos DataSet o conjunto de datos.


Gracias a este intermediario, el DataSource, es que es posible conectar cualquier componente data-ware con cualquier DataSet, sea de la suite que sea. Por tanto para responder a tu pregunta: SI... puedes utilizar el que sea.

Entonces se consigue independencia entre los componentes de acceso y los que muestran los datos. No es que existe un DBGrid específico para IBX o incluso, que decir, para Firebird.
¡Son independientes! Por eso dará lo mismo sea cual fuese la suite que utilices.

El manejo de IBX es similar a ADO en ese sentido, ¡de hecho cualquier suite es similar a otra!
El IBTable vendría a ser equivalente al ADOTable,
El IBQuery vendría a ser equivalente al ADOQuery,
etc.

Lo que varía a cada suite son el manejo de la conexión, de las transacciones, y detalles menores como por ejemplo en ADO se utiliza Paramaters, mientras que IBX utiliza Params para trabajar con los parámetros.

Lee con conciencia la Cara Oculta por favor.


Saludos,
  • 0

#3 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6295 posts
  • LocationArgentina

Posted 11 September 2011 - 01:49 PM

Ahora procedo a explicarte, en forma rápida, como has de vincular los componentes IBX:

1) Colocas un TIBDataBase
2) Colocas un TIBTransaction

Vinculas al TIBTransaction con el TIBDataBase mediante su propiedad DefaultDatabase.
Realizas la conexión a una base de datos:
Selecciona Local o Remote, indicas la base de datos, el user, password, pruebas que ande. OK.

3) Coloca un TIBTable, TIBQuery o el DataSet que necesites.

Lo configuras para establecer la tabla, consulta, etc. Y no te olvides de indicarle el TIBDatabase mediante su propiedad Database primero, obviamente.

4) Colocas el DataSource.

Vincúlado al DataSet correspondiente... así como si se tratase de ADO, unicamente que te aparecerán los DataSets de IBX.

5) Colocas el TDBGrid o el Data-ware que necesitas.
Lo vinculas al DataSource, y el resto de las propiedades que hagan falta... como hacías igual de siempre como si fuera ADO.

6) Pones Active en true para e DataSet y el DataSource y ¡gualá! estarás mostrando los datos...

¿Ahora dime ¿Qué tan diferente te ha resultado todo esto respecto a cuando utilizabas ADO? 

Acostúmbrate a pulsar F1 si no sabes algo sobre cierto componente. Haz de cuenta que estás corriendo carreras... ¡te guste o no, hay que correr en la F1! 

Saludos,
  • 0

#4 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2137 posts

Posted 11 September 2011 - 01:57 PM

Hola,
¿Ya estuviste leyendo la Cara Oculta de D4? ¿En los capítulos en donde habla sobre los DataSource, y los componentes data-ware?

Creo que tienes unas confusiones mentales, ¡un tutti frutti de cosas! Pongamos orden:

Todas las suites de componentes de conexión: ADO, IBX, DBX, etc. son abstracciones de los elmentos de una base de datos:

Los componentes xxxConecction son las abstracciones de las conexiones que se establecen con una base de datos. Como así también los xxxTable son la abstracción  de Tablas y los xxxQuery son las abstracciones de consultas (o en sentido más general, de un conjunto de datos), los xxxStoreProc son las abstracciones de los Procedimientos Almacenados; etc.

Ninguno de éstos te muestran y sirven para mostrar los datos. Simplemente están hechos para trabajar con la base de datos. Aquí es donde aparecen los DataSource.
El DataSource, o fuente de datos, hace de puente o intermediario entre los componentes visuales, los data-ware, y los componentes de acceso de datos.

Los data-ware como los DBEdit, DBGrid, DBNavigator, etc. simplemente se encargan de mostrar los datos que los componentes de acceso les traen... de allí que se los llame a estos últimos DataSet o conjunto de datos.


Gracias a este intermediario, el DataSource, es que es posible conectar cualquier componente data-ware con cualquier DataSet, sea de la suite que sea. Por tanto para responder a tu pregunta: SI... puedes utilizar el que sea.

Entonces se consigue independencia entre los componentes de acceso y los que muestran los datos. No es que existe un DBGrid específico para IBX o incluso, que decir, para Firebird.
¡Son independientes! Por eso dará lo mismo sea cual fuese la suite que utilices.

El manejo de IBX es similar a ADO en ese sentido, ¡de hecho cualquier suite es similar a otra!
El IBTable vendría a ser equivalente al ADOTable,
El IBQuery vendría a ser equivalente al ADOQuery,
etc.

Lo que varía a cada suite son el manejo de la conexión, de las transacciones, y detalles menores como por ejemplo en ADO se utiliza Paramaters, mientras que IBX utiliza Params para trabajar con los parámetros.

Lee con conciencia la Cara Oculta por favor.


Saludos,



Coincido plenamente con Delphius.


Solo para agregar que en "La cara oculta de Delphi 6" (http://www.delphiacc...=downfile&id=75) hay un capítulo muy completo sobre componentes de acceso a datos, estimo que no tardes más de 2 horas en leerlo, eso te aclarará muchas cosas.


Saludos
  • 0




IP.Board spam blocked by CleanTalk.