SQLAPI++ 是一套可以讀取多個SQL資料庫(Oracle, SQL Server, DB2, Sybase, Informix, InterBase, SQLBase, MySQL, PostgreSQL)的C++ library。SQLAPI++直接調用本地目標資料庫管理系統(DBMS)的API,使得在SQLAPI + + library上的你開發的應用程序可以迅速有效的進行。該產品提供低級別的界面,允許開發人員存取資料庫的特定功能。SQLAPI++ library扮演了一個中間角色方便存取資料庫。
SQL資料庫伺服器支援以下的平台:
Server | Win32 | Linux/Unix |
Oracle Database Server | Supported (OCI) | Supported (OCI) |
Microsoft SQL Server | Supported (DB-Library, OLE DB) | FreeTDS ODBC driver should be used |
Sybase | Supported (Open Client, ASE & ASA) | Supported (Open Client, ASE & ASA) |
DB2 | Supported (DB2 CLI) | Supported (DB2 CLI) |
Informix | Supported (Informix CLI) | Supported (Informix CLI) |
InterBase/Firebird | Supported | Supported |
SQLBase | Supported (CAPI) | Supported (CAPI) |
MySQL, MariaDB | Supported (MySQL C API) | Supported (MySQL C API) |
PostgreSQL | Supported (libpq) | Supported (libpq) |
ODBC | Supported | Supported (iODBC, unixODBC) |
SQLite | Supported | Supported |
Sybase SQL Anywhere | Supported (SQL Anywhere C API) | Supported (SQL Anywhere C API) |
SQLAPI++ library 新版介紹
NEW FEATURES
- Oracle: Removed the code that changed the parameter/field character set form for Unicode version (thanks Jakub Zakrzewski)
- SQL Server (ODBC): Added "SQL_SOPT_SS_DEFER_PREPARE" command option (changed to SQL_DP_ON by default, thanks Christian Maurer)
- General: Code optimization according cppcheck detections
- General: SACommand::RowsAffected returns sa_uint64_t instead of long
- General: Replaced 'long' by 'int' type in SAInterval class
- General: GetClientVersion/GetServerVersion methods return int instead of long
- General: SA_dtLong/SA_dtULong data types and related methods replaced by SA_dtInt32/SA_dtUInt32 (old names are still here but operate with sa_int32_t/sa_uint32_t values)
- General: Added SAPI::ThreadInit and SAPI::ThreadEnd methods
BUG FIXES
- SQLite: Fixed crashing when an empty SQL statement is passed (thanks Christian Schmitz)
- Informix: Fixed bug with rows prefetching (thanks Jesús Malo Poyatos)
- MariaDB: Fixed ::IsAlive method detects the server connection lost (thanks Tennessy Tan)
Why use SQLAPI++?
- SQLAPI++ directly calls native API’s of target DBMSs (unlike ADO which uses OLEDB and/or ODBC intermediate layer). That’s why SQLAPI++ is the fastest way to manage you data.
- No need (vs ADO) to install and configure OLEDB and/or ODBC drivers when developing and distributing your applications.
- Low-level interface that allows developers to access database-specific features.
- SQLAPI++ ships with all the sources.
- Free lifetime support, bugs fixing and new version updates.
Currently SQLAPI++ library supports the following C/C++ compilers:
- Microsoft Visual C++
- Embarcadero (Borland) C++
- GNU GCC C++ compiler
- Solaris Studio C++ compiler