SQLdb Programming Reference/es

From Free Pascal wiki
Jump to navigationJump to search

Documentación

Por favor ver la documentación oficial en http://www.freepascal.org/docs-html/fcl/sqldb/index.html documentación SQLDB ]. Como siempre la documentación oficial es la autorizada. English (en) español (es) français (fr) 日本語 (ja) 中文(中国大陆)‎ (zh_CN)

Documentation

Please see the official documentation at SQLDB documentation.

This article attempts to give some more detail about SQLDb; however the official documentation is authorative.

Class Structure

El siguiente diagrama trata de mostrar la jerarquía y el enlazado requerido de los principales componentes en SQLdb. Ciertamente no es exhaustiva, tampoco hace uso de un diagrama estructurado propiamente, por tanto no trates de leer mucho más en el de lo que hay. Espero que ayude a facilitar el trabajo con trozos del código fuente que puede que necesites revisar para que realmente comprendas como funciona todo.

Laz SqlDB components.png

Notas

  • El enlace de TDatabase a TTransaction es Transactions, y es una lista, implicando algunas transacciones que son posibles para una base de datos. However, a new link is defined from TSQLConnection to TSQLTransaction which is Transaction - a single transaction per database. This does not actually hide the previous link, but only the new link is published, and it is probably inadvisable to use the ancestor's link.
  • Some of the inherited links need to be typecast a los nuevos tipos paa que resulten de utilidad. No puedes llamar SQLQuery.Transaction.Commit, ya que Commit se encuentra definido únicamente en TSQLTransaction. Llama a SQLTransaction.Commit, o "(SQLQuery.Transaction como TSQLTransaction).commit"


Interactiones

TConnection

Documentación: documentación TSQLConnection

Una TConnection representa una conexión a la base de datos SQL. En su uso diario, utilizarás el descendiente para una base de datos específica (e.g. TIBConnection para Interbase/Firebird), pero es posible utilizar TConnection si estás tratando de escribir database factory/database independent applications (note: it's probably more advisable to use TSQLConnector). In this object, you specify connection-related items such as hostname, username and password. Finalmente puedes conectar o desconectar (utilizando las propiedadees .Active o .Connected). La mayoría de las bases de datos permiten múltiples conexiones concurrentes desde el mismo programa/usuario.

TSQLTransaction

Documentation: TSQLTransaction

This object represents a transaction on the database. en la práctica se necesita al menos una transacción para estar activo con una base de datos, incluso si solamente lo utilizas para leer datos. When using a single transaction, set the TConnection.Transaction property to the transaction to set the default transaction for the database; the corresponding TSQLTransaction.Database property should then automatically point to the connection.

Setting a TSQLTransaction to .Active/calling .StartTransaction starts a transaction; calling .Commit or .RollBack commits (saves) or rolls back (forgets/aborts) the transaction. You should surround your database transactions with these unless you use .Autocommit or CommitRetaining.

TSQLQuery

Documentation: TSQLQuery documentation

Ver Trabajando con TSQLQuery para más detalles.

TSQLQuery is an object that embodies a dataset from a connection/transaction pair using its SQL property to determines what data is retrieved from the database into the dataset.

When working with it, you therefore need to at least specify the transaction, connection amd SQL properties. The TSQLQuery is an important part in the chain that links databound controls to the database. As said, the SQL property determines what SELECT query is run against the database to get data. FPC will try to determine what corresponding SQL INSERT, UPDATE and DELETE statements should be used in order to process user/program generated data changes. Si es necesario, el programador puede afinar esto y especificar manualmente las propiedades InsertSQL, UpdateSQL y DeleteSQL. properties.

DataSource

A datasource object keeps track of where in a dataset (tal como TSQLQuery) data bound components are. El programador debe especificar el objeto TSQLQuery correspondiente para este trabajo.

Databound controls such as DBGrid

Estos controles deben enlazarse a un DataSource. A menudo tendrán propiedades para indicar que campos debe mostrar del DataSource.

Data modules

Data modules can be used to store non-visual components such as T*Connection, TSQLTransaction, TSQLQuery etc. Data modules also let you share components between forms.

VerSQLdb_Tutorial4.