Difference between revisions of "Lazarus Database Overview/fr"

From Lazarus wiki
Jump to navigationJump to search
Line 37: Line 37:
  
 
== Lazarus et MSSQL/Sybase ==
 
== Lazarus et MSSQL/Sybase ==
You can connect to Microsoft SQL Server databases using
+
Vous pouvez vous connecter à une base de données microsoft SQL Server en utilisant :
# [https://www.devart.com/sdac/ SQL Server data access Lazarus components].They are working on Windows and Mac OS X. Free to download.  
+
# [https://www.devart.com/sdac/ Composants Lazarus d'accès aux données SQL Server]. Ils fonctionnent sur Windows et Mac OS X. Libres en téléchargement.  
# The built-in '''SQLdb''' connectors '''TMSSQLConnection''' and '''TSybaseConnection''' (since Lazarus 1.0.8/FPC 2.6.2): see [[mssqlconn]].
+
# Les connecteurs natifs '''TMSSQLConnection''' et '''TSybaseConnection''' de '''SQLdb''' (depuis Lazarus 1.0.8/FPC 2.6.2) : voir [[mssqlconn/fr|mssqlconn]].
# '''Zeos''' component '''TZConnection''' (latest CVS, see links to Zeos elsewhere on this page)
+
# Composant '''Zeos''' '''TZConnection''' (le plus récent CVS, voir le lien vers ZEOS quelque part dans cette page).
## On Windows you can choose between native library '''ntwdblib.dll''' (protocol '''mssql''') or FreeTDS libraries (protocol '''FreeTDS_MsSQL-nnnn''') where nnnn is one of four variants depending on the server version. For Delphi (not Lazarus) there is also another Zeos protocol '''ado''' for MSSQL 2005 or later. Using protocols mssql or ado generates code not platform independient.
+
## Sur Windows, vous pouvez choisir entre la bibliothèque native '''ntwdblib.dll''' (protocole '''mssql''') ou les bibliothèques FreeTDS (protocole '''FreeTDS_MsSQL-nnnn''') nnnn est l'une des quatre variantes dépendant de la version du serveur. Pour Delphi (pas Lazarus) il ya  aussi un autre protocole Zeos '''ado''' pour MS SQL 2005 et suivants. L'utilisation des protocoles mssql ou ado génère du code qui n'est pas indépendant de la plate-forme.
## On Linux the only way is with FreeTDS protocols and libraries (you should use '''libsybdb.so''').
+
## Sur Linux, la seule manière est avec les protocoles et bibliothèques FreeTDS (vous devrez utiliser '''libsybdb.so''').
# '''ODBC''' (MSSQL and Sybase ASE) with SQLdb '''TODBCConnection''' (consider using '''TMSSQLConnection''' and '''TSybaseConnection''' instead)  
+
# '''ODBC''' (MSSQL et Sybase ASE) avec '''TODBCConnection''' de SqlDB (envisagez d'utiliser '''TMSSQLConnection''' et '''TSybaseConnection''' à la place).
## See also [http://wiki.freepascal.org/ODBCConn#Connecting_to_Microsoft_SQL_Server]
+
## Voir aussi [http://wiki.freepascal.org/ODBCConn/fr#Connecting_to_Microsoft_SQL_Server].
## On Windows it uses native ODBC Microsoft libraries (like sqlsrv32.dll for MSSQL 2000)
+
## Sur Windows, il utilise les bibliothèques natives ODBC de Microsoft (comme sqlsrv32.dll pour MSSQL 2000).
## On Linux it uses unixODBC + FreeTDS (packages unixodbc or iodbc, and tdsodbc). Since 2012 there is also a Microsoft SQL Server ODBC Driver 1.0 for Linux which is a binary product (no open source) and provides native connectivity, but was released only for 64 bits and only for RedHat.
+
## Sur Linux, il utilise unixODBC + FreeTDS (paquets unixodbc or iodbc, and tdsodbc). Depuis 2012, il y aussi un pilote ODBC 1.0 pour Microsoft SQL Server pour Linux qui est un produit binaire (pas Open Source) et fournit une connectivité native, mais il est livré uniquement pour le 64-bit et uniquement pour RedHat.
  
 
== Lazarus et ODBC ==
 
== Lazarus et ODBC ==

Revision as of 07:35, 23 March 2017

English (en) español (es) français (fr) 日本語 (ja) polski (pl) русский (ru)

Portail de la base de données

Références:

Tutoriels/articles pratiques :

Bases de données

Advantage - MySQL - MSSQL - Postgres - Interbase - Firebird - Oracle - ODBC - Paradox - SQLite - dBASE - MS Access - Zeos

Présentation

Cet article est une vue d'ensemble sur les SGBD qui peuvent fonctionner avec Lazarus.

Lazarus supporte plusieurs SGBD sur étagère (utilisant p.ex. le framework SQLDB), cependant le développeur doit installer les paquets nécessaires (bibliothèque client) pour chacune.

Vous pouvez accéder à la base de données par code ou en plaçant des composants sur une fiche. Les composants sensibles aux données representent des champs et sont connectés en définissant la propriété DataSource pour pointer vers une TDataSource. La DataSource représente une table et est connectée aux composants de la base de données (exemples : TPSQLDatabase, TSQLiteDataSet) en définissant la propriété DataSet. Les composants sensibles aux données résident dans l'onglet Data Controls. La DataSource et les composants de base de données sont logés dans l'onglet Data Access.

Voir les tutoriels pour l'accès natif Lazarus/FPC aux bases de données, convenant pour Firebird, MySQL, SQLite, PostgreSQL etc :

Lazarus et Interbase / Firebird

  • Firebird est très bien supporté par FPC/Lazarus (en utilisant SQLDB); veuillez regarder Firebird pour les détails.
  • Autres bibliothèques pour Firebird est une liste de bibliothèques d'accès alternatives (p.ex. PDO, Zeos, FBlib).

IBDAC

Les composants d'accès aux données (Data Access Components (IBDAC)) InterBase (et FireBird) sont une bibliothèque de composants qui fournissent un accès natif à InterBase, Firebird et Yaffil depuis Lazarus (et Free Pascal) sur Windows, Mac OS X, iOS, Android, Linux et FreeBSD pour les deux plates-formes 32-bit et 64-bit. Les applications basées sur IBDAC se connectent au serveur en utilisant directement le client InterBase. IBDAC est conçu pour aider le programmeur à développer des applications InterBase plus rapides et plus propres.

IBDAC est un remplacement complet des solutions standard de connectivité InterBase. Il présente une alternative efficace aux composants InterBase Express, au moteur de base de données de Borland (BDE) et au pilote standard dbExpress pour l'accès à InterBase.

Les composants d'accès aux données Firebird pour Lazarus sont libres en téléchargement.

Lazarus et MySQL

  • SVP, voir mysql pour des détails sur les diverses méthodes d'accès, qui incluent :
  1. Support natif par SQLdb
  2. PDO
  3. Zeos
  4. Composants d'accès aux données de MySQL par Lazarus

Lazarus et MSSQL/Sybase

Vous pouvez vous connecter à une base de données microsoft SQL Server en utilisant :

  1. Composants Lazarus d'accès aux données SQL Server. Ils fonctionnent sur Windows et Mac OS X. Libres en téléchargement.
  2. Les connecteurs natifs TMSSQLConnection et TSybaseConnection de SQLdb (depuis Lazarus 1.0.8/FPC 2.6.2) : voir mssqlconn.
  3. Composant Zeos TZConnection (le plus récent CVS, voir le lien vers ZEOS quelque part dans cette page).
    1. Sur Windows, vous pouvez choisir entre la bibliothèque native ntwdblib.dll (protocole mssql) ou les bibliothèques FreeTDS (protocole FreeTDS_MsSQL-nnnn) où nnnn est l'une des quatre variantes dépendant de la version du serveur. Pour Delphi (pas Lazarus) il ya aussi un autre protocole Zeos ado pour MS SQL 2005 et suivants. L'utilisation des protocoles mssql ou ado génère du code qui n'est pas indépendant de la plate-forme.
    2. Sur Linux, la seule manière est avec les protocoles et bibliothèques FreeTDS (vous devrez utiliser libsybdb.so).
  4. ODBC (MSSQL et Sybase ASE) avec TODBCConnection de SqlDB (envisagez d'utiliser TMSSQLConnection et TSybaseConnection à la place).
    1. Voir aussi [1].
    2. Sur Windows, il utilise les bibliothèques natives ODBC de Microsoft (comme sqlsrv32.dll pour MSSQL 2000).
    3. Sur Linux, il utilise unixODBC + FreeTDS (paquets unixodbc or iodbc, and tdsodbc). Depuis 2012, il y aussi un pilote ODBC 1.0 pour Microsoft SQL Server pour Linux qui est un produit binaire (pas Open Source) et fournit une connectivité native, mais il est livré uniquement pour le 64-bit et uniquement pour RedHat.

Lazarus et ODBC

ODBC is a general database connection standard which is available on Linux, Windows and OSX. You will need an ODBC driver from your database vendor and set up an ODBC "data source" (also known as DSN). You can use the SQLDB components (TODBCConnection) to connect to an ODBC data soruce. See ODBCConn for more details and examples.

Microsoft Access

You can use the ODBC driver on Windows as well as Linux to access Access databases; see MS Access

Lazarus et Oracle

  • See Oracle. Access methods include:
  1. Built-in SQLDB support
  2. Zeos
  3. Oracle data access Lazarus component

Lazarus et PostgreSQL

  • PostgreSQL is very well supported out of the box by FPC/Lazarus
  • Please see postgres for details on various access methods, which include:
  1. Built-in SQLdb support. Use component TPQConnection from the SQLdb tab of the Component Palette
  2. Zeos. Use component TZConnection with protocol 'postgresql' from palette Zeos Access
  3. PostgreSQL data access Lazarus component

Lazarus et SQLite

SQLite is an embedded database; the database code can be distributed as a library (.dll/.so/.dylib) with your application to make it self-contained (comparable to Firebird embedded). SQLite is quite popular due to its relative simplicity, speed, small size and cross-platform support.

Please see the SQLite page for details on various access methods, which include:

  1. Built-in SQLDb support. Use component TSQLite3Connection from palette SQLdb
  2. Zeos
  3. SQLitePass
  4. TSQLite3Dataset
  5. SQLite data access Lazarus components

Lazarus et dBase

FPC includes a simple database component that is derived from the Delphi TTable component called "TDbf" TDbf Website). It supports various DBase and Foxpro formats.

TDbf does not accept SQL commands but you can use the dataset methods etc and you can also use regular databound controls such as the DBGrid.

It doesn't require any sort of runtime database engine. However it's not the best option for large database applications.

See the TDbf Tutorial page for the tutorial as well as documentation.

You can use e.g. OpenOffice/LibreOffice Base to visually create/edit dbf files, or create DBFs in code using TDbf.

Lazarus et Paradox

Paradox was the default format for database files in old versions of Delphi. The concept is similar to DBase files/DBFs, where the "database" is a folder, and each table is a file inside that folder. Also, each index is a file too. To access this files from Lazarus we have these options:

  • TParadox: Install package "lazparadox 0.0" included in the standard distribution. When you install this package, you will see a new component labeled "PDX" in the "Data Access" palette. This component is not standalone, it uses a "native" library, namely the pdxlib library which is available for Linux and Windows. For example, to install in Debian, you could get pxlib1 from package manager. In Windows you need the pxlib.dll file.
  • TPdx: Paradox DataSet for Lazarus and Delphi from this site. This component is standalone (pure object pascal), not requiring any external library, but it can only read (not write) Paradox files. The package to install is "paradoxlaz.lpk" and the component should appear in the "Data Access" palette with PDX label (but orange colour).
  • TParadoxDataSet: is a TDataSet that can only read Paradox Files up to Version 7. See this wiki page. The approach is similar to the TPdx component, the package to install is "lazparadox.lpk" and the component should also appear in the "Data Access" palette.

TSdfDataset et TFixedDataset

TSdfDataSet and TFixedFormatDataSet are two simple TDataSet descandants which offer a very simple textual storage format. These datasets are very convenient for small databases, because they are fully implemented as an Object Pascal unit, and thus require no external libraries. Also, their textual format allows them to be easily viewed/edited with a text editor.

See CSV for example code.

Lazarus et Advantage Database Server

Voir aussi

(Sorted alphabetically)

Liens externes

  • Pascal Data Objects - a database API that worked for both FPC and Delphi and utilises native MySQL libraries for version 4.1 and 5.0 and Firebird SQL 1.5, and 2.0. It's inspired by PHP's PDO class.
  • Zeos+SQLite Tutorial - Good tutorial using screenshots and screencasts it explain how to use SQLite and Zeos, spanish (google translate does a good work in translating it to english)