Revision 1 of 5, by WikiArchive on 11-4-2026. The page as it is now.
Databases/es
Databases portal
References:
- General info
- Libraries
- Field types
- Controls
- FAQ
- SQL how-to
- Working With TSQLQuery
- In-memory database applications
Tutorials/practical articles:
- Overview
- 0 - Database set-up
- 1 - Getting started
- 2 - Editing
- 3 - Queries
- 4 - Data modules
- SQLdb Programming Reference
Databases
[[Advantage Database Server|Advantage]] \- [[MySQLDatabases|MySQL]] \- [[mssqlconn|MSSQL]] \- [[postgres|Postgres]] \- [[Firebird|Interbase]] \- [[Firebird]] \- [[Oracle]] \- [[ODBCConn|ODBC]] \- [[TParadox|Paradox]] \- [[SQLite]] \- [[Lazarus Tdbf Tutorial|dBASE]] \- [[MS Access]] \- [[Zeos tutorial|Zeos]]Trabajo en curso...
Este control consistente en una barra de botones de utilidad ofrece al usuario algo de control directo sobre el DataSet, permitiendo al usuario:
- Mover al registro siguiente (next) y previo (prior), así como al principio (first) y final (last).
- Añadir un registro nuevo (equivalente a la llamada a un método dataset.insert).
- Poner el dataset en modo edición (edit), necesario cuando ya existe dicho registro y deseamos modificarlo.
- Borrar un registro (delete) el registro actual.
- Envíar (post) o Cancelar (cancel) los cambios actuales del DataSet a la base de datos.
- Refresca (refresh) los datos (útil en aplicaciones de bases de datos multiusuario) desde la base de datos.
El programador puede determinar, en tiempo de diseño, que botones quiere dejar visibles o no, ajustando algunas de sus propiedades en el inspector de objetos:
- VisibleButtons: Permite controlar lo que puede hacer el usuario. Por ejemplo, si los borrados (delete) no están permitidos se oculta este pulsador. Si se tiene un DBGrid anexado a un dataset puede decidirse que no se necesitan los pulsadores previo (prior) y siguiente (next).
Los botones que posee esta barra son del tipo tdbnavbuttonset admitiendo los siguientes:
- Comienzan por nb de navigator button:
- nbFirst: navigator button First (mueve al primer registro).
- nbPrior: navigator buttor Prior (mueve al registro previo).
- nbNext: navigator button Next (mueve al registro siguiente).
- nbLast: navigator button Last (muesve al último registro).
- nbInsert: navigator button Insert (inserta un nuevo registro).
- nbDelete: navigator button Delete (borra el registro actual).
- nbEdit: navigator button Edit (edita un registro existente).
- nbPost: navigator button Post (envía el DataSet a la base de datos).
- nbCancel: navigator button Cancel (cancela los cambios realizados).
- nbRefresh navigator button Refresh (refresca el contenido del DataSet desde la base de datos).
Por ejemplo para un control de este tipo y su dataset asociado, vinculado a una fuente de datos: dbnavigator1.DataSource.DataSet.First; nos situaría en el primer registro.
- Width: Si no se muestran todos los pulsadores, posiblemente se necesite establecer la anchura al valor alturanúmero de pulsadores visibles( heightnumber_of_visible_buttons).
Para su funcionamiento se debe especificar el conjunto de datos al que se asocia mediante su propiedad DataSource.
Si se utiliza en conjunción con otros controles de datos (data-aware) tales como TDBGrid o TDBMemo entonces controla que registros se mostrarán, la posición del cursor de selección de registro y la iniciación de cambios del dataset y en última instancia de la base de datos.
Por otro lado cabe indicar que la mayor parte de la funcionalidad de esta barra se encuentra ya implementada, pero en el caso de que el programador necesite especificar acciones asociadas a un pulsadores individuales, hay un procedimiento tdbcustomnavigator.btnclick al cual se puede enviar un argumentocon el valor de índice del botón pulsado, y el procedimiento escoge que acción llamar dependiendo del indice del botón.
Corriendo los test de bases de datos de FPC
Los componentes de bases de datos FreePascal incluyen un framework de prueba que se puede utilizar para probar la funcionalidad. Ver el directorio source\packages\fcl-db\tests\ en el árbol de directorios de instalación de FPC.
Lo incluido es un framework de prueba que se puede arrancar en varios componentes de bases de datos, así como en otros test (e.g. test de exportacion de bases de datos en XMLXSDExportTest.lpr).
Para arrancar el framework de prueba para una cierta base de datos hacer lo siguiente:
1. Salvar "source\packages\fcl-db\tests\database.ini.txt" como "source\packages\fcl-db\tests\database.ini"
2. Modificar source\packages\fcl-db\tests\database.ini para escoger el tipo de base de datos a utilizar.
Example: utilizar Interbase o Firebird: [Database] type=interbase
3. En el mismo fichero, configurar los valores para la base de datos a utilizar. E.g. si se escogió interbase anteriormente:
01 [interbase]
02 connector=sql
03 connectorparams=interbase
04 ; esto es un comentario, ya que comienza por ; los números de inicio de lÃnea se han puesto para más claridad.
05 ;nombre de la base de datos. obviamente cambiar por el de la base de datos a utilizar.
06 name=testdb
07 user=sysdba
08 password=masterkey
09 ; tu hostname o nombre de equipo puede diferir del utilizado en este ejemplo (lógico).
10 hostname=192.168.0.424. Compila y arranca "source\packages\fcl-db\tests\dbtestframework.pas"
La salida se obtendrá en formato XML.
Para más detalles leer el fichero "source\packages\fcl-db\tests\README.txt"
Paquetes de Bases de Datos suministrados con Lazarus
sqldblaz.lpk
Este paquete provee acceso a diferentes bases de datos. Incluye:
- Interbase/Firebird
- MySQL (Versiones: 4.0/4.1/5.0/5.1/5.5 en Lazarus 1.0.4).
- Oracle
- PostgreSQL (Versiones: hasta la 8.x en Lazarus 1.0.4)
- SQLite (Versión: 3 en Lazarus 1.0.4)(con soporte para la extensión Spatialite)
- Cualquier base de datos que tenga un driver ODBC.
Los componentes (TSQLQuery, TSQLTransaction, TIBConnection, TODBCConnection, TOracleConnection, TMySQL40Connection, TMySQL41Connection, TMySQL50Connection, TPQConnection) se encuentran en la pestaña 'SQLdb' en la paleta de componentes.
dbflaz.lpk
Este paquete provee acceso a las bases de datos dBase y FoxPro.Puedes obtener más información en la Tutoría de Lazarus Tdbf. El componente TDbf se localiza en la pestaña 'Data Access' en la paleta de componentes.
sqlitelaz.lpk
Este paquete provee acceso a las bases de datos SQLite. Puedes obtener más información en la Tutoría de Bases de Datos Lazarus.
sdflaz.lpk
El componente TSdfDataSet se encuentran en la pestaña 'Data Access' en la paleta de componentes.
lazreport.lpk
La página principal del generador de informes es http://lazreport.sourceforge.net/. Más información y enlaces adicionales se encuentran en aquí. LazReport depende del paquete Printer4Lazarus. Con la revisión 11950 LazReport fué incluido el repositorio SVN de Lazarus.
Paquetes y librerías externas
Zeos DataBase Objects
Los componentes de este paquete proveen acceso a diferentes bases de datos. Puedes obtener más información aquí. Este wiki contiene una tutoría Zeos.
Pascal Data Objects
Ahora hay una alternativa.
Soporta:
- MySQL 4.1 y 5.0
- sqlite-2 y sqlite-3
- pgsql-8.1
- interbase-5, interbase-6, firebird-1.0, firebird-1.5, firebird-1.5E, firebird-2.0, firebird-2.0E
- mssql (librería Microsoft) y sybase (librería FreeTDS)
- oracle
- así como sentencias preparadas, enlace, y procedimientos almacenados son soportados por la API de base de datos llamada Pascal Data Objects, que se inspira en PHP Data Objects. Todo el código y la documentación necesaria para utilizar esta nueva API está disponible en aquí en Sourceforge:
TPSQL
Los componentes de este paquete proveen acceso vía TCP/IP a bases de datos PostgreSQL. Puedes obtener más información en esta página.
FIBL
Los componentes de este paquete proveen acceso a bases de datos Interbase y Firebird. La página principal está aquí.
FBLib Firebird, librería
FBLib es una librería de fuente abierta sin componentes ligados a datos (No Data Aware) para acceso directo a bases de datos relacionales Firebird desde Borland Delphi/Kylix, Free Pascal y Lazarus.
Las características actuales incluyen:
- Acceso directo a to Firebird 1.0.x, 1.5.x y 2.x Classic o SuperServer
- Multiplataforma [Win32,Gnu/Linux,FreeBSD)
- Selección automática de la librería cliente 'fbclient' o 'gds32'
- Consultas con parámetros
- Soporte del dialecto SQL 1/3
- Acuerdo de Licencia LGPL
- Extracción de Metadata
- Analizador simple de secuencias de comandos
- Únicamente añade 100-150 KB al EXE final
- Soporta campos BLOB
- Exporta datos a HTML SQL Script
- Administrador de servicios (copia de seguridad, restauración,gfix...)
- Eventos de alerta
Puedes descargar la documentación desde el sitio web FBLib's.
Unified Interbase
UIB provee acceso a bases de datos Interbase, Firebird y YAFFIL. TLa página principal es [www.progdigy.com](http://www.progdigy.com). Un repositorio SVN está disponible aquí .
TechInsite Object Persistence Framework (tiOPF)
Más información acerca de tiOPF se puede encontrar en esta página.
From the Free Pascal wiki, page "Databases/es", as the Internet Archive kept it on 2025-05-14. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
