Sign in Join
Wiki copytemporary

Databases/es: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Databases/es

OldNewLine
1+---
2+[[Portal:Databases|**Databases portal**]]
3+References:
4+
5+ * [[Databases|General info]]
6+ * [[Database libraries|Libraries]]
7+ * [[Database field type|Field types]]
8+ * [[Data Controls tab|Controls]]
9+ * [[Lazarus DB Faq|FAQ]]
10+ * [[SqlDBHowto|SQL how-to]]
11+ * [[Working With TSQLQuery]]
12+ * [[How to write in-memory database applications in Lazarus/FPC|In-memory database applications]]
13+
14+Tutorials/practical articles:
15+
16+ * [[Lazarus Database Overview|Overview]]
17+ * [[SQLdb Tutorial0|0 - Database set-up]]
18+ * [[SQLdb Tutorial1|1 - Getting started]]
19+ * [[SQLdb Tutorial2|2 - Editing]]
20+ * [[SQLdb Tutorial3|3 - Queries]]
21+ * [[SQLdb Tutorial4|4 - Data modules]]
22+ * [[SQLdb Programming Reference]]
23+
24+Databases
25+
26+ [[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]]
27+
28+Trabajo en curso...
29+
30+
31+Este control consistente en una barra de botones de utilidad ofrece al usuario algo de control directo sobre el DataSet, permitiendo al usuario:
32+
33+ * Mover al registro siguiente (**next**) y previo (**prior**), así como al principio (**first**) y final (**last**).
34+ * Añadir un registro nuevo (equivalente a la llamada a un método dataset.insert).
35+ * Poner el dataset en modo edición (**edit**), necesario cuando ya existe dicho registro y deseamos modificarlo.
36+ * Borrar un registro (**delete**) el registro actual.
37+ * Envíar (**post**) o Cancelar (**cancel**) los cambios actuales del DataSet a la base de datos.
38+ * Refresca (**refresh**) los datos (útil en aplicaciones de bases de datos multiusuario) desde la base de datos.
39+
40+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:
41+
42+ * 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**).
43+
44+Los botones que posee esta barra son del tipo [tdbnavbuttonset](<http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbnavbuttonset.html>) admitiendo los siguientes:
45+
46+ * Comienzan por nb de navigator button:
47+ * nbFirst: navigator button First (mueve al primer registro).
48+ * nbPrior: navigator buttor Prior (mueve al registro previo).
49+ * nbNext: navigator button Next (mueve al registro siguiente).
50+ * nbLast: navigator button Last (muesve al último registro).
51+ * nbInsert: navigator button Insert (inserta un nuevo registro).
52+ * nbDelete: navigator button Delete (borra el registro actual).
53+ * nbEdit: navigator button Edit (edita un registro existente).
54+ * nbPost: navigator button Post (envía el DataSet a la base de datos).
55+ * nbCancel: navigator button Cancel (cancela los cambios realizados).
56+ * nbRefresh navigator button Refresh (refresca el contenido del DataSet desde la base de datos).
57+
58+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.
59+
60+ * Width: Si no se muestran todos los pulsadores, posiblemente se necesite establecer la anchura al valor altura*número de pulsadores visibles( height*number_of_visible_buttons).
61+
62+Para su funcionamiento se debe especificar el conjunto de datos al que se asocia mediante su propiedad DataSource.
63+
64+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.
65+
66+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](<http://lazarus-ccr.sourceforge.net/docs/lcl/dbctrls/tdbcustomnavigator.btnclick.html>) 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.
67+
68+## Corriendo los test de bases de datos de FPC
69+
70+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.
71+
72+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).
73+
74+Para arrancar el framework de prueba para una cierta base de datos hacer lo siguiente:
75+
76+1\. Salvar "source\packages\fcl-db\tests\database.ini.txt" como "source\packages\fcl-db\tests\database.ini"
77+
78+2\. Modificar source\packages\fcl-db\tests\database.ini para escoger el tipo de base de datos a utilizar.
79+
80+`Example: utilizar Interbase o Firebird: [Database] type=interbase`
81+
82+3\. En el mismo fichero, configurar los valores para la base de datos a utilizar. E.g. si se escogió interbase anteriormente:
83+```
84+01 [interbase]
85+ 02 connector=sql
86+ 03 connectorparams=interbase
87+ 04 ; esto es un comentario, ya que comienza por ; los números de inicio de línea se han puesto para más claridad.
88+ 05 ;nombre de la base de datos. obviamente cambiar por el de la base de datos a utilizar.
89+ 06 name=testdb
90+ 07 user=sysdba
91+ 08 password=masterkey
92+ 09 ; tu hostname o nombre de equipo puede diferir del utilizado en este ejemplo (lógico).
93+ 10 hostname=192.168.0.42
94+```
95+
96+4\. Compila y arranca "source\packages\fcl-db\tests\dbtestframework.pas"
97+
98+La salida se obtendrá en formato XML.
99+
100+
101+Para más detalles leer el fichero "source\packages\fcl-db\tests\README.txt"
102+
103+## Paquetes de Bases de Datos suministrados con Lazarus
104+
105+### sqldblaz.lpk
106+
107+Este paquete provee acceso a diferentes bases de datos. Incluye:
108+
109+ * Interbase/Firebird
110+ * MySQL (Versiones: 4.0/4.1/5.0/5.1/5.5 en Lazarus 1.0.4).
111+ * Oracle
112+ * PostgreSQL (Versiones: hasta la 8.x en Lazarus 1.0.4)
113+ * SQLite (Versión: 3 en Lazarus 1.0.4)(con soporte para la extensión [[Spatialite]])
114+ * Cualquier base de datos que tenga un driver ODBC.
115+
116+Los componentes (TSQLQuery, TSQLTransaction, TIBConnection, TODBCConnection, TOracleConnection, TMySQL40Connection, TMySQL41Connection, TMySQL50Connection, TPQConnection) se encuentran en la pestaña 'SQLdb' en la paleta de componentes.
117+
118+ * [[SQLdb Package/es|Paquete SQLdb]]
119+
120+### dbflaz.lpk
121+
122+Este paquete provee acceso a las bases de datos dBase y FoxPro.Puedes obtener más información en la [[Lazarus Tdbf Tutorial|Tutoría de Lazarus Tdbf]]. El componente TDbf se localiza en la pestaña 'Data Access' en la paleta de componentes.
123+
124+### sqlitelaz.lpk
125+
126+Este paquete provee acceso a las bases de datos SQLite. Puedes obtener más información en la [[Lazarus Database Tutorial/es|Tutoría de Bases de Datos Lazarus]].
127+
128+### sdflaz.lpk
129+
130+El componente TSdfDataSet se encuentran en la pestaña 'Data Access' en la paleta de componentes.
131+
132+### lazreport.lpk
133+
134+La página principal del generador de informes es <http://lazreport.sourceforge.net/>. Más información y enlaces adicionales se encuentran en [ aquí](</index.php?title=Projects_using_Lazarus/es&action=edit&redlink=1> "Projects using Lazarus/es \(page does not exist\)"). LazReport depende del paquete Printer4Lazarus. Con la revisión 11950 LazReport fué incluido el repositorio SVN de Lazarus.
135+
136+## Paquetes y librerías externas
137+
138+### Zeos DataBase Objects
139+
140+Los componentes de este paquete proveen acceso a diferentes bases de datos. Puedes obtener más información [[ZeosDBO|aquí]]. Este wiki contiene una [[Zeos tutorial/es|tutoría Zeos]].
141+
142+### Pascal Data Objects
143+
144+Ahora hay una alternativa.
145+
146+Soporta:
147+
148+ * MySQL 4.1 y 5.0
149+ * sqlite-2 y sqlite-3
150+ * pgsql-8.1
151+ * interbase-5, interbase-6, firebird-1.0, firebird-1.5, firebird-1.5E, firebird-2.0, firebird-2.0E
152+ * mssql (librería Microsoft) y sybase (librería FreeTDS)
153+ * oracle
154+
155+ * 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í](<http://pdo.sourceforge.net>) en Sourceforge:
156+
157+### TPSQL
158+
159+Los componentes de este paquete proveen acceso vía TCP/IP a bases de datos PostgreSQL. Puedes obtener más información en [[TPSQL/es|esta página]].
160+
161+### FIBL
162+
163+Los componentes de este paquete proveen acceso a bases de datos Interbase y Firebird. La página principal está [aquí](<http://sourceforge.net/projects/fibl>).
164+
165+### FBLib Firebird, librería
166+
167+[FBLib](<http://fblib.altervista.org/>) 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.
168+
169+Las características actuales incluyen:
170+
171+ * Acceso directo a to Firebird 1.0.x, 1.5.x y 2.x Classic o SuperServer
172+ * Multiplataforma [Win32,Gnu/Linux,FreeBSD)
173+ * Selección automática de la librería cliente 'fbclient' o 'gds32'
174+ * Consultas con parámetros
175+ * Soporte del dialecto SQL 1/3
176+ * Acuerdo de Licencia LGPL
177+ * Extracción de Metadata
178+ * Analizador simple de secuencias de comandos
179+ * Únicamente añade 100-150 KB al EXE final
180+ * Soporta campos BLOB
181+ * Exporta datos a HTML SQL Script
182+ * Administrador de servicios (copia de seguridad, restauración,gfix...)
183+ * Eventos de alerta
184+
185+Puedes descargar la documentación desde el [sitio web FBLib's](<http://fblib.altervista.org/>).
186+
187+### Unified Interbase
188+
189+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í](<https://uib.svn.sourceforge.net/svnroot/uib>) .
190+
191+### TechInsite Object Persistence Framework (tiOPF)
192+
193+Más información acerca de tiOPF se puede encontrar en esta [[tiOPF|página]].
194+
195+---
196+*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](/wiki-contact).*

Back to history