Difference between revisions of "TSQLDBLibraryLoader"

From Lazarus wiki
Jump to navigationJump to search
m
(clarification)
Line 2: Line 2:
  
 
== Use and alternatives ==
 
== Use and alternatives ==
Recent (end of 2012) FPC versions try to load some default library names, but may fail. Using SQLDBLibraryLoader, you can specify the exact filename to load.
+
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.
  
 
SQLDBLibraryLoader needs to be called before loading/enabling TSQLConnection components.
 
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.
+
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.
  
 
== Sample code ==
 
== Sample code ==

Revision as of 14:41, 28 March 2014

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.

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.

Sample code

  SQLDBLibraryLoader1.LibraryName := 'c:\path_to_sqllite_library\sqlite3.dll';
  SQLDBLibraryLoader1.ConnectionType:='SQLite3';
  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.