TSQLDBLibraryLoader

From Free Pascal wiki
Revision as of 17:38, 2 April 2014 by BigChimp (talk | contribs) (→‎Use and alternatives: sqlite status)
Jump to navigationJump to search

Overview

TSQLDBLibraryLoader is a Lazarus and FPC component that specifies the names and locations of SQLDB database libraries (DLLs/.sos/.dylibs) should be loaded from where.

Use and alternatives

For SQLDB database connectors, at least recent FPC versions try to load some default library names, but may fail. Using SQLDBLibraryLoader, you can specify the exact filename to load.

Lazarus includes an SQLDBLibraryloader component on the SQLDB tab. sqldbcomponents.png

SQLDBLibraryLoader needs to be called before loading/enabling TSQLConnection components.

Note that often you can a similar thing by setting the library name for the TSQLConnection descendant you are using. This does depend on that TSQLConnection descendant supporting that functionality.

Light bulb  Note: Support for using SQlite with SQLDBLibraryLoader was added to FPC trunk (2.7.1) and is not available in earlier FPC versions. Possible alternative: InitializeSQLite function in unit sqlite3dyn. Please remove this text if tested.

Sample code

  SQLDBLibraryLoader1.ConnectionType:='SQLite3';
// Note: .ConnectionType resets the LibraryName, so set LibraryName after
// setting ConnectionType!!
  SQLDBLibraryLoader1.LibraryName := 'c:\path_to_sqllite_library\sqlite3.dll';
  SQLDBLibraryLoader1.Enabled := true; 
  SQLDBLibraryLoader1.LoadLibrary;

Work in progress

This article is still a rough draft; please compare with the official announcement by Michael Van Canneyt on the FreePascal mailing list and update this page.