What's new
- What's new in UniDAC
Supported target platforms
- Windows 32-bit and 64-bit
- macOS 64-bit
- Mac ARM
- iOS 64-bit
- iOS Simulator ARM 64-bit
- Android 32-bit and 64-bit
- Linux 32-bit and 64-bit
General usability
- Direct access to server data. Does not require installation of other data provider layers (such as BDE)
- Access without using client library [Oracle, SQL Server, MySQL, PostgreSQL, SQLite, DBF]
- Interface compatible with standard data access methods, such as BDE and ADO
- VCL, LCL and FMX versions of library available
- Separated run-time and GUI specific parts allow you to create pure console applications such as CGI
- Unicode support
- National charset support [Oracle, MySQL, InterBase, PostgreSQL]
- Unified SQL for writing server-independent queries
- Highly usable design time support
- Easy to deploy
Network and connectivity
- Disconnected Mode with automatic connection control for working with data offline
- Local Failover for detecting connection loss and implicitly reexecuting certain operations
- Ability to search for installed servers in a local network [SQL Server, MySQL, PostgreSQL]
- Connection timeout management [Oracle, SQL Server, MySQL, PostgreSQL, ODBC]
- Support for OS authentication
- Support for Proxy Authentication
- Support for the change expired password
- Support for both IPv6 and Ipv4 protocol
Compatibility
- Support for the latest server versions
- Support for embedded server versions
- Support for Delphi 6, C++ Builder 6, and later versions up to RAD Studio 12 Athens
- Support for Lazarus 3.0 and Free Pascal 3.2.2
- Support for reporting components, including InfoPower, ReportBuilder, FastReport
- Support for all standard and third-party visual data-aware controls
- Support for Professional Edition of Delphi and C++Builder for developing client/server applications
Server-specific features
-
Oracle
- Multiple Oracle Homes support
- Oracle sequence support
- Direct LOB access support
- Temporary LOB management routines
- Temporary LOBs for updating LOB fields
- OCI connection pooling, proxy session pooling, and statement caching
- Oracle optimizer control
- CLIENT_IDENTIFIER support
- DBMS_ALERT support with the TUniAlerter component
- Secure connections with SSL, SSH, and HTTP tunneling
- Oracle package support
- Oracle 9i scrollable cursor support
- DML array operations support
- ProxySession support
- External Procedure support
- ROWID values retrieval
- Overloaded stored procedures support
- Support for WITH FUNCTION clause
-
SQL Server
- Possibility to change application name for a connection
- Possibility to change workstation identifier for a connection
- Configuration of OEM/ANSI character translation
- Enhanced support for SQL Server Compact Edition
- Enhanced support for User-defined Types of SQL Server
- Ability to lock records and tables
-
MySQL
- HANDLER syntax support
- Transaction isolation level support
- Possibility to retrieve last auto-incremented value
- Session identifer retrieval
- Server object information retrieval
- Row-level and table-level locking support
- Secure connections with SSL, SSH, and HTTP tunneling
-
InterBase/Firebird
- Advanced BLOB support
- Streaming (non-caching) BLOB access support
- Advanced generator support
- Advanced support for the character set OCTETS
- Support for the Firebird 2 EXECUTE BLOCK syntax
- Support for the Firebird 2 RETURNING clause
- Advanced locking for Firebird 2
- Automatic updates by DB_KEY unique field for Firebird 2
- Multiple transactions support with the TUniTransaction component
- InterBase events support with the TUniAlerter component
- Comprehensive array data type support
- Default value support for stored procedures
- InterBase services components for configuring server parameters and security
- Support for the Firebird 3 BOOLEAN datatype
- Support for the Firebird 2.1 trusted authentication
- Support for InterBase OTW encryption
-
PostgreSQL
- Advanced sequences support
- Advanced Large Objects support
- Ability to control Fetch block size
- Returning result sets from stored procedures
- Secure connections with SSL, SSH, and HTTP tunneling
- Notifications support with the TUniAlerter component
- Support for PostgreSQL Asynchronous Notification with the TUniAlerter component
- Supports the possibility of retrieving last inserted OID value
- Advanced errors support
- Support for the PostgreSQL notices
-
SQLite
- Support for all commonly used data types
- Support for autoincrement fields
- Possibility to retrieve last auto-incremented value
- SQLite database encryption in Direct mode using different encryption algorithms
- Data Type Mapping
- Support for automatic database creation on connect
- Support for Shared-Cache mode
- Support for SQLite user-defined functions
- Support for SQLite user-defined collations
- Support for SQLite extensions loading
- Support for SQLite R*Tree module
- Support for SQLite FTS3 and FTS4 extensions
- Support for multi-SQL statements executing
-
MongoDB
- Support for all commonly used data types
- Support for native MongoDB query and update commands syntax
- Support for displaying/modifying documents using regular data-aware controls like TDBGrid
- Support for simply modifying documents in code using "fluent" interface
- Support for reading/writing documents in the Extended JSON format
- Support for working with collections via regular SQL using VirtualDAC
-
DB2
- Advanced sequences support
- Schema and function path support
-
DBF
- Support for a variety of database formats: dBaseIII-dBase10, dBase for Windows, HiPer-Six, FoxPro 2, Visual FoxPro
- Support for all native data types
- Support for native dBase functions
- Support for autoincrement fields
- Support for .dbt (dBase), .fpt (FoxPro) and .smt (HiPer-Six) MEMOs
- Support for .mdx (dBaseIV+) and .cdx (Visual FoxPro) indexes
- Support for table management commands: CREATE/DROP/PACK/ZAP/REINDEX TABLE, ALTER TABLE ADD/DROP/ALTER COLUMN
- Support for index management commands: CREATE/DROP INDEX
Performance
- High overall performance
- Fast controlled fetch of large data blocks
- Optimized string data storing
- Advanced connection pooling
- High performance of applying cached updates with batches
- Caching of calculated and lookup fields
- Fast Locate in a sorted DataSet
- Preparing of user-defined update statements
- High performance batch processing
- Intelligent fetch block size control
- Advanced connection pooling
- SmartFetch Mode enabling fast bi-directional navigation through large datasets
Local data storage operations
- Database-independent data storage with TVirtualTable component
- CachedUpdates operation mode
- Local sorting and filtering, including by calculated and lookup fields
- Local master/detail relationship
- Master/detail relationship in CachedUpdates mode
Data access and data management automation
- Automatic data updating with TUniQuery, TUniTable, and TUniStoredProc components
- Automatic record refreshing and locking
- Automatic query preparing
- SmartRefresh option allows you to synchronize two or more datasets automatically
- Support for ftWideMemo field type in Delphi 2006 and higher
- Data Type Mapping
- Support for Data Encryption in a client application
Extended data access functionality
- Separate component for executing SQL statements
- Simplified access to table data with TUniTable component
- Ability to retrieve metadata information with TUniMetaData component
- BLOB compression support
- Support for using macros in SQL
- FmtBCD fields support
- Ability to customize update commands by attaching external components to TUniUpdateSQL objects
- Deferred detail DataSet refresh in master/detail relationships
- MIDAS technology support
- UniDataAdapter component for WinForms and ASP.NET applications
- Distributed transactions support with the TUniTransaction component [ Oracle, SQL Server ]
- Default value support for stored procedures
- RefreshQuick method [ SQL Server, MySQL ]
- Fast record insertion with TUniLoader component
- NonBlocking mode allows background executing and fetching data in separate threads
- LargeInt fields support
- Object-oriented building of SELECT statements
Data exchange
- Transferring data between all types of TDataSet descendants with TCRBatchMove component
- Data export and import to/from XML (ADO format)
- Ability to synchronize positions in different DataSets
- Extended data management with TUniDump component
Script execution
- Advanced script execution features with the TUniScript component
- Support for executing individual statements in scripts
- Support for executing huge scripts stored in files with dynamic loading
- Ability to use standard clients tool syntax in scripts
SQL Execution monitoring
- Extended SQL tracing capabilities provided by the TUniSQLMonitor component and dbMonitor
- Borland SQL Monitor support
- Ability to send messages to dbMonitor from any point in your program
Visual extensions
- Includes the source code of enhanced TCRDBGrid data-aware grid control
- Customizable connection dialog
Design-time enhancements
- DataSet Manager tool to control DataSet instances in the project
- Advanced design-time component and property editors
- Automatic design-time component linking
- Easy migration from BDE and ADO with Migration Wizard
- More convenient data source setup with the TUniDataSource component
- Syntax highlighting in the design-time editors
Resources
- Code documentation and guides in the CHM, PDF, and HXS formats
- Many helpful demo projects
Licensing and support
- Included annual UniDAC Subscription with Priority Support
- Licensed royalty-free per developer, per team, or per site