Difference between revisions of "SQLdb Package/es"

From Free Pascal wiki
Jump to navigationJump to search
 
(64 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The SQLdb package contains FPC units to access a number of SQL databases. It is "packaged" as sqldblaz.lpk in Lazarus, and the components can be found on the "SQLdb" tab.
+
{{SQLdb Package}}[[category:Castellano]][[category:Español]]
 +
 
 +
El paquete SQLdb contiene las Unidades (units) de FPC que permiten el acceso a un gran número de Bases de Datos SQL. En Lazarus encontraremos el paquete ''sqldblaz.lpk'' que una vez compilado e instalado nos permitirá el acceso a sus componentes en el LCL dentro de la pestaña "SQLdb".
 +
 
 +
 
 +
[[File:sqldbcomponents.png‎|center]]
 +
 
 +
 
 +
 
 +
== Documentación ==
 +
 
 +
Ver [http://www.freepascal.org/docs-html/fcl/sqldb/index.html Documentación sobre SQLDB]
 +
 
 
== Componentes ==
 
== Componentes ==
  
El paquete SQLdb provee los siguientes componentes:
+
El paquete SQLdb proporciona los siguientes componentes:
  
 
==== TSQLQuery ====
 
==== TSQLQuery ====
  
Desciende de TDataset y provee los datos como una tabla procedente de la consulta (query) SQL realizada. También puede ser utilizado para ejecutar consultas que no retornan datos.  
+
[[File:SQLdb_TSQLQuery.PNG‎|left]]
 +
 
 +
Este es un descendiente de TDataset y proporciona los datos (procedentes de la consulta SQL realizada) en forma de Tabla. También puede ser empleado para ejecutar consultas SQL (e.g. procedimientos almacenados, INSER INTO...) que no retornan datos. Ver [[Working With TSQLQuery| Trabajando con TSQLQuery]] para más detalles..
 +
Documentación: ver [http://www.freepascal.org/docs-html/fcl/sqldb/tsqlquery.html TSQLQuery ]
 +
 
 +
En el inspector de objetos podemos ver:
 +
 
 +
Active: (valor por defecto: False).
 +
 
 +
AutoCalcFields: (valor por defecto: True).
 +
 
 +
Database:
 +
 
 +
DataSource:
 +
 
 +
DeleteSQL: (TStringList).
 +
 
 +
FieldDefs: (valor por defecto: 0 items).
 +
 
 +
FileName:
 +
 
 +
Filter:
 +
 
 +
Filtered:
 +
 
 +
IndexDefs: (valor por defecto: 0 items).
 +
 
 +
IndexFieldNames:
 +
 
 +
InsertSQL: Es un listado de cadenas que especifican la query para realizar el INSERT (TstringList). Caso de no definirse uno nos puede lanzar una excepción similar a esta:
 +
 
 +
 
 +
[[File:InsertSQLQueryNotExpecified.PNG | center]]
 +
 
 +
 
 +
MaxIndexesCount: (valor por defecto: 2).
 +
 
 +
Name: (valor por defecto SQLQuery1).
 +
 
 +
Options: '''sqo''' = '''s'''tandar '''q'''uery '''o'''ption
 +
 
 +
*sqoAutoApplyUpdates: (valor por defecto: True).
 +
 
 +
*sqoAutoCommit: (valor por defecto: True).
 +
 
 +
*sqoCancelUpdatesOnRefresh: (valor por defecto: True).
 +
 
 +
*sqoKeepOpenOnCommit: (valor por defecto: True).
 +
 
 +
*sqoRefreshUsingSelect: (valor por defecto: True).
 +
 
 +
PacketRecords: (valor por defecto: 10).
 +
 
 +
ParamCheck: (valor por defecto: True).
 +
 
 +
Params: (valor por defecto: 0 items).
 +
 
 +
ParseSQL: (valor por defecto: True).
 +
 
 +
ReadOnly: (valor por defecto: True).
 +
 
 +
RefreshSQL: (TStringList).
 +
 
 +
Secuence:
 +
 
 +
ApplyEvent:
 +
 
 +
*saeOnNewRecord
 +
 
 +
*saeOnPost
 +
 
 +
FieldName.
 +
 
 +
IncrementBy: (valor por defecto: 1).
 +
 
 +
SecuenceName:
 +
 
 +
ServerFilter:
 +
 
 +
ServerFiltered: (valor por defecto: True).
 +
 
 +
ServerIndexDefs: (valor por defecto: 0 items).
 +
 
 +
SQL: (TStringList).
 +
 
 +
Tag: (valor por defecto: 0).
 +
 
 +
Transaction:
 +
 
 +
UniDerectional:
 +
 
 +
UpdateMode:
 +
 
 +
UpdateSQL:
 +
 
 +
UsePrimaryKeyAsKey: (valor por defecto: True).
 +
 
 +
====TXXXConnection====
 +
 
 +
Donde XXX es el tipo de Base de Datos a la cual nos vamos a conectar. Cada uno de estos componentes emplea una petición "standar" de los componentes ''SQLQuery'' y ''SQLTransaction'', y los traduce a peticiones especificas de cada Base de Datos, permitiendo la abstracción sobre las características especificas de las mismas.
 +
 
 +
Estos objetos de conexión descienden del genérico TSQLConnection; se puede utilizar TSQLConnection para crear programas que utilicen bases de datos de forma que puedan conectar a múltiples bases de datos. (ver [[SQLdb Tutorial3]]).
 +
 
 +
Los componentes TXXXConnection que podremos emplear son:
 +
 
 +
*TIBConnection .............. ''Permite conexiones a BBDD Borland Interbase/Firebird''
 +
*TMSSQLConnection ...... ([[mssqlconn|Microsoft SQL Server]], disponible desde la versión 2.6.1 de FPC & Lazarus 1.0.8) - mssqlconn.
 +
*TMySQL40Connection ... ''Conexiones a BBDD MySQL 4.0'' requiere la librería cliente MySQL 4.0) - mysql40conn
 +
*TMySQL41Connection ... ''Conexiones a BBDD MySQL 4.1'' requiere la librería cliente MySQL 4.1) - mysql41conn
 +
*TMySQL50Connection ... ''Conexiones a BBDD MySQL 5.0''requiere la librería cliente MySQL 5.0) - mysql50conn
 +
*TMySQL51Connection ... ''Conexiones a BBDD MySQL 5.1''requiere la librería cliente MySQL 5.1, disponible desde la versión 2.5.1 de FPC)
 +
*TMySQL55Connection ... ''Conexiones a BBDD MySQL 5.5''requiere la librería cliente MySQL 5.5 client library, available since FPC version 2.6.1/Lazarus 1.0.8)
 +
*TMySQL56Connection ... ''Conexiones a BBDD MySQL 5.6'' requiere la librería cliente MySQL 5.6) - mysql56conn
 +
*TMySQL57Connection ... ''Conexiones a BBDD MySQL 5.7'' requiere la librería cliente MySQL 5.7) - mysql57conn
 +
*TODBCConnection ......... ''Para conexiones a BBDD mediante los drivers see [[ODBCConn|ODBC]] instalados en el PC''
 +
*TOracleConnection  ........ ''Para emplear con el motor ([[Lazarus_Database_Overview#Lazarus_and_Oracle|Oracle]])
 +
*TPQConnection ............ ''Para emplear con BBDD ([[postgresql|PostgreSQL]])''
 +
*TSybaseConnection ...... ''Para emplear con el motor ([[mssqlconn|Sybase ASE]], disponible desde la versión 2.6.1 de FPC & Lazarus 1.0.8)
 +
*TSQLite3Connection ..... ''Para emplear con el motor ([[SQLite|SQLite]] - a partir de la versión 2.2.2 de FPC''.
  
 
==== TSQLTransaction ====
 
==== TSQLTransaction ====
  
Encapsula las transacciones en servidor de base de datos. No voy a decir mucho más acerca del mismo dado que tampoco he trabajado demasiado con él. Lo más importante es que tiene los métodos commit y rollback para finalizar o cancelar la transacción en la base de datos.
+
Documentación: ver [http://www.freepascal.org/docs-html/fcl/sqldb/tsqltransaction.html documentación sobre TSQLTransaction]
 +
 
 +
Encapsula las transacciones con el servidor de Bases de Datos. Un objeto TXXXConnection siempre necesita al menos otro del tipo TSQLTransaction asociado a el, de manera que las transacciones de las consultas sean gestionadas.
 +
 
 +
Las consultas/acciones en la base de datos necesitan encapsularse en:
 +
* Un bloque .StartTransaction/.Commit (o .Rollback).
 +
*O un simple .StartTransaction al comienzo, seguido por .CommitRetaining o .RollBackretaiing. CommitRetaining y RollbackRetaining mantienen la transacción abierta, por tanto no se necesita otra StartTransaction.
 +
 
 +
Estableciendo .Active a true si previamente estaba como false equivale a .StartTransaction
 +
 
 +
Estableciendo .Active a false si previamente estaba como true equivale a .Rollback
  
====TXXXConnection====
+
== Usando el paquete SQLdb ==
  
Donde XXX es el tipo de base de datos a la cual se está conectando. Cada uno de estos componentes toma la petición "standard" de los componentes SQLQuery y SQLTransaction y los traduce en peticiones a la base de datos, permitiendo las idiosincracias de la base de datos específica que se está utilizando.
+
Para utilizar el paquete SQLdb son necesarios los componentes ''TSQLQuery'' y ''TSQLTransaction'', además del componente ''TXXXConnection'' especifico para la conexión.
  
Los componentes actuales son:
+
Aquí tenéis un breve tutorial:
  
*TIBConnection (Borland Interbase / Firebird)
+
* Asegurarse de tener el driver cliente apropiado para la base de datos a la que queremos conectar y que el servidor en el otro extremo esté activo y acepte conexiones (estando la base de datos creada con su(s) correspondientes tabla(s).
*TODBCConnection (Una conexión ODBC a la base de datos para la cual el PC tiene driver...)
+
* Ir a la solapa SQLdb en la paleta de componentes.
*TOracleConnection (Oracle)
+
*  Añadir un componente TXXXConnection (conveniente para el tipo de base de datos que se esté utilizando) al formulario, y rellenar las propiedades necesarias para conectar a la base de datos. Estas variarán dependiendo de la base de datos actual. Hay que asegurarse de que la propiedad "connected" se puede establecer al valor true, caso contrario deberemos revisar los pasos previos también.
*TMySQL40Connection (MySQL - varias versiones)
+
* Añadir un componente TSQLTransaction.  Volver al componente Connection y establecer su propiedad "Transaction" a la nueva transacción. Esto debería establecer la propiedad  transaction de la base de datos - chequearlo para asegurarse.  Deberías ser capaz de establecer su valor a "true".
*TMySQL41Connection
+
* Añadir un componente SQLQuery y establecer sus propiedades "Database" al componente de conexión que hemos añadido.
*TMySQL50Connection
+
* Establecer la propiedad "SQL" de SQLQuery.  Para un primer test realizar por ejemplo un  "SELECT * FROM <nombre_tabla>" que selecciona todo el contenido de la tabla para la base de datos con la que se estableció la conexión.
*TPQConnection (PostgreSQL)
+
* Establecer Active a True.  Si funciona, se ha abierto una consulta (query) y el dato está disponible.
*TSQLite3Connection (fpc versión 2.2.2)
+
Desde este punto, añadir controles es igual que para cualquier otra base de datos, de todos modos recapitulemos:
 +
* Añadir un componente TDatasource (desde la solapa "Data Access") y establecer su propiedad "dataset" al componente "SQLQuery".
 +
* Añadir algunos controles desde la solapa "Data Access". Para una comprobación rápida se puede añadir un componente TDBGrid y establecer su "datasource" a la fuente de datos que se ha añadido. Con esto se deberían visualizar datos en el grid de acuerdo al resultado obtenido de la consulta que se haya realizado (por ejemplo: "SELECT * FROM <nombre_tabla>").
  
==Using the SQLdb Package==
+
Por supuesto, esto es solamente el comienzo, pero obteniendo algunas datos en la grid suele ser usualmente el primer paso para asegurar que la conexión está funcionando. Se pueden encontrar explicaciones más detalladas en [[Working With TSQLQuery]].
  
To use the SQLdb package, you need a TSQLQuery component, a TSQLTransaction component, and one of the connection components.
+
Aparte de la GRID podemos añadir componentes de la solapa Data Controls. Una vez que la GRID presenta datos, con estos componentes podemos mostrar valores individuales por ejemplo de uno o varios campos de un registro en modo texto (para ello seleccionamos en el inspector de objetos su fuente de datos y el campo que nos interese, o bien imágenes con un TDBImage (en este caso son valores binarios de tipo blob/bytea que debemos crear previamente a su uso en la tabla que utilicemos). Nos podemos mover de uno a otro registro con un TDBNavigator de forma sencilla que nos permite movernos por el dataset con next,prior...
 
Here is a quick tutorial:
 
  
*  Go to the SQLdb tab in Component Palette.
+
== Notas ==
*  Add a T___Connection component (suitable for the type of database you are using) to a form, and fill in the appropriate properties to connect to your database.  These will vary depending on the actual database.  Make sure you can set the "connected" property to true.
 
*  Add a TSQLTransaction component.  Return to the Connection component, and set its Transaction Property to the new transaction.  This should also set the transaction's database property - check to make sure.  You should be able to set active to true.
 
*  Add an SQLQuery component and set its Database and Transaction properties to the components you just added.
 
*  Set the SQLQuery "SQL" property.  For a first test, just do a "select * from <tablename>.
 
*  Set active to true.  If you can, you have opened your query, and the data is available.
 
From here on, adding controls is the same as for any database, but just to recap:
 
*  Add a TDatasource component (from the Data Access tab) and set its dataset property to the SQLQuery component
 
*  Add some controls from the Data Controls tab.  For a quick check, add a TDBGrid component, and set its datasource property to the Datasource component you just added.  You should see the data from the query you entered.
 
  
OF course, this is just the beginning, but getting some data in a grid is usually the first step to ensure the database connection is working.  More detailed explanations will be found at [[Working With TSQLQuery]].
+
Se pueden encontrar más detalles en [[SQLdb Programming Reference]]
  
==Notes==
+
Las páginas relacionadas con el paquete SQLdb fueron inicialmente escritas a partir de observaciones realizadas utilizando TPQConnection, PostgreSQL 8.1 bajo WinXP. Es de esperar resultados similares para otras bases de datos, de modo que si alguien los puede confirmar vendría bien tener aquí unas anotaciones del resultado.
More details will be found in [[SQLdb Programming Reference]]
 
  
The pages related to the SQLdb package were initially written from explorations done using TPQConnection, using a PostgreSQL 8.1 database on Win XP O/S. They are expected to be true for the other databases and OSes as well.  If you can confirm this, please leave a note here.  
+
Parece funcionar de modo similar en MySQL 5.0.45 bajo Win XP. La propiedad 'active' de TSQLTransaction no puede ser establecida a true, pero los datos obtenidos de la base de datos se pueden visualizar en el componente TDbGrid (se encuentra en la solapa DataControls).  
  
It seems to work similarly on MySQL 5.0.45 on Win XP. TSQLTransaction property 'active' cannot however be set to true, but the live data from the database table are visible in the TDbGrid component already during design of the form and the program compiles.
+
Se puede encontrar algo más de información (notas y documentación) en el siguientes enlace:
  
There are some notes and documentation started:
 
 
http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=fcldbnotes
 
http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=fcldbnotes
  
An interface view of the classes is availble:
+
Para ver el listados de clases disponibles para esta interfaz ir a:
 +
 
 
http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=index-4&unit=sqldb
 
http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=index-4&unit=sqldb
 +
 +
--[[User:Jagluiperd|Jagluiperd]] 00:54, 11 September 2010 (CEST)

Latest revision as of 17:31, 19 June 2017

English (en) español (es) français (fr) 日本語 (ja) 中文(中国大陆)‎ (zh_CN)

El paquete SQLdb contiene las Unidades (units) de FPC que permiten el acceso a un gran número de Bases de Datos SQL. En Lazarus encontraremos el paquete sqldblaz.lpk que una vez compilado e instalado nos permitirá el acceso a sus componentes en el LCL dentro de la pestaña "SQLdb".


sqldbcomponents.png


Documentación

Ver Documentación sobre SQLDB

Componentes

El paquete SQLdb proporciona los siguientes componentes:

TSQLQuery

SQLdb TSQLQuery.PNG

Este es un descendiente de TDataset y proporciona los datos (procedentes de la consulta SQL realizada) en forma de Tabla. También puede ser empleado para ejecutar consultas SQL (e.g. procedimientos almacenados, INSER INTO...) que no retornan datos. Ver Trabajando con TSQLQuery para más detalles.. Documentación: ver TSQLQuery

En el inspector de objetos podemos ver:

Active: (valor por defecto: False).

AutoCalcFields: (valor por defecto: True).

Database:

DataSource:

DeleteSQL: (TStringList).

FieldDefs: (valor por defecto: 0 items).

FileName:

Filter:

Filtered:

IndexDefs: (valor por defecto: 0 items).

IndexFieldNames:

InsertSQL: Es un listado de cadenas que especifican la query para realizar el INSERT (TstringList). Caso de no definirse uno nos puede lanzar una excepción similar a esta:


InsertSQLQueryNotExpecified.PNG


MaxIndexesCount: (valor por defecto: 2).

Name: (valor por defecto SQLQuery1).

Options: sqo = standar query option

  • sqoAutoApplyUpdates: (valor por defecto: True).
  • sqoAutoCommit: (valor por defecto: True).
  • sqoCancelUpdatesOnRefresh: (valor por defecto: True).
  • sqoKeepOpenOnCommit: (valor por defecto: True).
  • sqoRefreshUsingSelect: (valor por defecto: True).

PacketRecords: (valor por defecto: 10).

ParamCheck: (valor por defecto: True).

Params: (valor por defecto: 0 items).

ParseSQL: (valor por defecto: True).

ReadOnly: (valor por defecto: True).

RefreshSQL: (TStringList).

Secuence:

ApplyEvent:

  • saeOnNewRecord
  • saeOnPost

FieldName.

IncrementBy: (valor por defecto: 1).

SecuenceName:

ServerFilter:

ServerFiltered: (valor por defecto: True).

ServerIndexDefs: (valor por defecto: 0 items).

SQL: (TStringList).

Tag: (valor por defecto: 0).

Transaction:

UniDerectional:

UpdateMode:

UpdateSQL:

UsePrimaryKeyAsKey: (valor por defecto: True).

TXXXConnection

Donde XXX es el tipo de Base de Datos a la cual nos vamos a conectar. Cada uno de estos componentes emplea una petición "standar" de los componentes SQLQuery y SQLTransaction, y los traduce a peticiones especificas de cada Base de Datos, permitiendo la abstracción sobre las características especificas de las mismas.

Estos objetos de conexión descienden del genérico TSQLConnection; se puede utilizar TSQLConnection para crear programas que utilicen bases de datos de forma que puedan conectar a múltiples bases de datos. (ver SQLdb Tutorial3).

Los componentes TXXXConnection que podremos emplear son:

  • TIBConnection .............. Permite conexiones a BBDD Borland Interbase/Firebird
  • TMSSQLConnection ...... (Microsoft SQL Server, disponible desde la versión 2.6.1 de FPC & Lazarus 1.0.8) - mssqlconn.
  • TMySQL40Connection ... Conexiones a BBDD MySQL 4.0 requiere la librería cliente MySQL 4.0) - mysql40conn
  • TMySQL41Connection ... Conexiones a BBDD MySQL 4.1 requiere la librería cliente MySQL 4.1) - mysql41conn
  • TMySQL50Connection ... Conexiones a BBDD MySQL 5.0requiere la librería cliente MySQL 5.0) - mysql50conn
  • TMySQL51Connection ... Conexiones a BBDD MySQL 5.1requiere la librería cliente MySQL 5.1, disponible desde la versión 2.5.1 de FPC)
  • TMySQL55Connection ... Conexiones a BBDD MySQL 5.5requiere la librería cliente MySQL 5.5 client library, available since FPC version 2.6.1/Lazarus 1.0.8)
  • TMySQL56Connection ... Conexiones a BBDD MySQL 5.6 requiere la librería cliente MySQL 5.6) - mysql56conn
  • TMySQL57Connection ... Conexiones a BBDD MySQL 5.7 requiere la librería cliente MySQL 5.7) - mysql57conn
  • TODBCConnection ......... Para conexiones a BBDD mediante los drivers see ODBC instalados en el PC
  • TOracleConnection ........ Para emplear con el motor (Oracle)
  • TPQConnection ............ Para emplear con BBDD (PostgreSQL)
  • TSybaseConnection ...... Para emplear con el motor (Sybase ASE, disponible desde la versión 2.6.1 de FPC & Lazarus 1.0.8)
  • TSQLite3Connection ..... Para emplear con el motor (SQLite - a partir de la versión 2.2.2 de FPC.

TSQLTransaction

Documentación: ver documentación sobre TSQLTransaction

Encapsula las transacciones con el servidor de Bases de Datos. Un objeto TXXXConnection siempre necesita al menos otro del tipo TSQLTransaction asociado a el, de manera que las transacciones de las consultas sean gestionadas.

Las consultas/acciones en la base de datos necesitan encapsularse en:

  • Un bloque .StartTransaction/.Commit (o .Rollback).
  • O un simple .StartTransaction al comienzo, seguido por .CommitRetaining o .RollBackretaiing. CommitRetaining y RollbackRetaining mantienen la transacción abierta, por tanto no se necesita otra StartTransaction.

Estableciendo .Active a true si previamente estaba como false equivale a .StartTransaction

Estableciendo .Active a false si previamente estaba como true equivale a .Rollback

Usando el paquete SQLdb

Para utilizar el paquete SQLdb son necesarios los componentes TSQLQuery y TSQLTransaction, además del componente TXXXConnection especifico para la conexión.

Aquí tenéis un breve tutorial:

  • Asegurarse de tener el driver cliente apropiado para la base de datos a la que queremos conectar y que el servidor en el otro extremo esté activo y acepte conexiones (estando la base de datos creada con su(s) correspondientes tabla(s).
  • Ir a la solapa SQLdb en la paleta de componentes.
  • Añadir un componente TXXXConnection (conveniente para el tipo de base de datos que se esté utilizando) al formulario, y rellenar las propiedades necesarias para conectar a la base de datos. Estas variarán dependiendo de la base de datos actual. Hay que asegurarse de que la propiedad "connected" se puede establecer al valor true, caso contrario deberemos revisar los pasos previos también.
  • Añadir un componente TSQLTransaction. Volver al componente Connection y establecer su propiedad "Transaction" a la nueva transacción. Esto debería establecer la propiedad transaction de la base de datos - chequearlo para asegurarse. Deberías ser capaz de establecer su valor a "true".
  • Añadir un componente SQLQuery y establecer sus propiedades "Database" al componente de conexión que hemos añadido.
  • Establecer la propiedad "SQL" de SQLQuery. Para un primer test realizar por ejemplo un "SELECT * FROM <nombre_tabla>" que selecciona todo el contenido de la tabla para la base de datos con la que se estableció la conexión.
  • Establecer Active a True. Si funciona, se ha abierto una consulta (query) y el dato está disponible.

Desde este punto, añadir controles es igual que para cualquier otra base de datos, de todos modos recapitulemos:

  • Añadir un componente TDatasource (desde la solapa "Data Access") y establecer su propiedad "dataset" al componente "SQLQuery".
  • Añadir algunos controles desde la solapa "Data Access". Para una comprobación rápida se puede añadir un componente TDBGrid y establecer su "datasource" a la fuente de datos que se ha añadido. Con esto se deberían visualizar datos en el grid de acuerdo al resultado obtenido de la consulta que se haya realizado (por ejemplo: "SELECT * FROM <nombre_tabla>").

Por supuesto, esto es solamente el comienzo, pero obteniendo algunas datos en la grid suele ser usualmente el primer paso para asegurar que la conexión está funcionando. Se pueden encontrar explicaciones más detalladas en Working With TSQLQuery.

Aparte de la GRID podemos añadir componentes de la solapa Data Controls. Una vez que la GRID presenta datos, con estos componentes podemos mostrar valores individuales por ejemplo de uno o varios campos de un registro en modo texto (para ello seleccionamos en el inspector de objetos su fuente de datos y el campo que nos interese, o bien imágenes con un TDBImage (en este caso son valores binarios de tipo blob/bytea que debemos crear previamente a su uso en la tabla que utilicemos). Nos podemos mover de uno a otro registro con un TDBNavigator de forma sencilla que nos permite movernos por el dataset con next,prior...

Notas

Se pueden encontrar más detalles en SQLdb Programming Reference

Las páginas relacionadas con el paquete SQLdb fueron inicialmente escritas a partir de observaciones realizadas utilizando TPQConnection, PostgreSQL 8.1 bajo WinXP. Es de esperar resultados similares para otras bases de datos, de modo que si alguien los puede confirmar vendría bien tener aquí unas anotaciones del resultado.

Parece funcionar de modo similar en MySQL 5.0.45 bajo Win XP. La propiedad 'active' de TSQLTransaction no puede ser establecida a true, pero los datos obtenidos de la base de datos se pueden visualizar en el componente TDbGrid (se encuentra en la solapa DataControls).

Se puede encontrar algo más de información (notas y documentación) en el siguientes enlace:

http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=fcldbnotes

Para ver el listados de clases disponibles para esta interfaz ir a:

http://z505.com/cgi-bin/powtils/docs/1.6/idx.cgi?file=index-4&unit=sqldb

--Jagluiperd 00:54, 11 September 2010 (CEST)