Universal Data Access Components (UniDAC) is a library of components that provides direct access to multiple databases from Delphi, C++Builder, Lazarus (and Free Pascal) on Windows, Mac OS X, iOS, Android, Linux and FreeBSD for both 32-bit and 64-bit platforms. We have combined the experience of long-term successful development into one product, which provides unified access to multiple database servers like Oracle, Microsoft SQL Server, MySQL, InterBase, Firebird, PostgreSQL, SQLite, DB2, Microsoft Access, SAP Sybase Advantage Database Server, SAP Sybase Adaptive Server Enterprise and other databases (using ODBC provider).
- Direct Mode: Allows your application to work with Oracle, SQL Server, MySQL, PostgreSQL, SQLite and NexusDB directly without involving a DB Client library, thus significantly facilitating deployment and configuration of your applications.
- Mobile Development: Develompent for iOS and Android mobile devices using UniDAC becomes still easier, as UniDAC allows your mobile applications to work with multiple databases as simply as desktop applications do.
- DB Compatibility: The product supports the latest versions of the popular database servers like Oracle, SQL Server, MySQL, InterBase, Firebird, PostgreSQL, SQLite and other databases (using ODBC provider)
- Data Type Mapping: If you want to make custom correspondence between server and Delphi data types, you can use a simple and flexible Data Type Mapping engine provided by UniDAC.
- IDE Compatibility: Our product is compatible with the latest IDE versions: Embarcadero RAD Studio 10.2 Tokyo, Delphi 10.2 Tokyo, C++Builder 10.2 Tokyo, Lazarus (and FPC). It is also compatible with the previous IDE versions since Delphi 6 and C++Builder 6.
- Development Platforms: Now you can develop not only VCL-based applications in Delphi and LCL-based ones in Lazarus, but also use the newestFireMonkeyapplication development platform.
- Performance: All the components and libraries are designed to help you write high-performance, lightweight data access layers, therefore they use advanced data access algorithms and techniques of optimisation.
- Monitoring: Use Devart's freeware dbMonitor tool to monitor and analyse all the DB calls made by your application using UniDAC. dbMonitor performs percomponent tracing of SQL statementexecution,commits, rollbacks, etc.
- Support: Visit Support page to get instant support from experienced professionals, fast and detailed responses, user engagement and interaction, frequent builds with bug fixes and much more.
Universal Data Access Components (UniDAC) - Features
Universal Data Access Components (UniDAC) is a powerful library of nonvisual cross-database data access components for Delphi, Delphi for .NET, C++Builder, and FreePascal. We have combined the experience of long-term successful development into one product, which provides unified access to the popular database servers like Oracle, Microsoft SQL Server, MySQL, InterBase, Firebird, and PostgreSQL.
UniDAC offers unified approach to the database-related applications development process. That means you can switch easily between different databases in your projects without going deep into their specifics.
Using UniDAC with its server-independent interface is the best way to create cross-database applications. UniDAC gives outstanding flexibility and independence to your projects.
Advantages of UniDAC Technology
- Universal Data Access
UniDAC provides transparent server-independent interfaces for working with different databases, and lets you change the client engine for a specific server type just by changing single connection option. It means that you can easily switch between database servers in your cross-database UniDAC-based application.
- Server-Aware Providers
UniDAC chooses the best way specific to the server to perform most operations. Every UniDAC data provider uses server-specific native connectivity. All operations with data are performed by providers automatically considering the selected database server peculiarities.
- Optimized Code
The goal of UniDAC is to enable developers to write efficient and flexible database applications. The UniDAC library is implemented using advanced data access algorithms and optimization techniques. Classes and components undergo comprehensive performance tests and are designed to help you write high-performance, lightweight data access layers.
- Compatibility with Standard Data Access Components
The UniDAC interface retains compatibility with the standard VCL data access components like BDE. Existing BDE-based applications can be easily migrated to UniDAC and enhanced to take advantage of the server-specific features.
- Direct access to server data. Does not require installation of other data provider layers (such as BDE and ODBC)
- Access without using client library [ Oracle, MySQL ]
- Interface compatible with standard data access methods, such as BDE and ADO
- VCL and VCL for .NET versions of library available
- Separated run-time and GUI specific parts allow you to create pure console applications
- Unicode support
- National charset support [ Oracle, MySQL, InterBase ]
Network and connectivity
- Disconnected Model 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 ]
- Connection timeout management [ Oracle, SQL Server, MySQL ]
- Full support of the latest server versions
- Support for embedded server versions
- Compatible with all IDE versions starting with Delphi 6 and C++Builder 6 except Delphi 8
- Wide reporting component support, including support for InfoPower, ReportBuilder, FastReport
- Support for all standard and third-party visual data-aware controls
- Allows you to use Professional Edition of Delphi and C++Builder to develop client/server applications
- Multiple Oracle Homes support
- Oracle sequence support
- Direct LOB access support
- Temporary LOB management routines
- Temporary LOBs for updating LOB fields
- OCI Connection Pooling and Statement Caching
- Oracle optimizer control
- CLIENT IDENTIFIER support
- 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
- HANDLER syntax support
- Possibility to retrieve last auto-incremented value
- 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
- Advanced sequences support
- Advanced Large Objects support
- Ability to control Fetch block size
- Returning result sets from stored procedures
- SSL support
- SQLite [New]
- Support for all commonly used data types
- Possibility to retrieve last auto-incremented value
- DB2 [New]
- Advanced sequences support
- Schema and function path support
- 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
Data access and data management automation
- Automatic data updating with TUniQuery, TUniTable, and TUniStoredProc components
- Automatic record refreshing and locking
- Automatic query preparing
- Support for ftWideMemo field type in Delphi 2006 and higher
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 ]
- 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
- 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
- Includes the source code of enhanced TCRDBGrid data-aware grid control
- Customizable connection dialog
- 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
- Complete documentation sets
- Printable documentation in PDF format
- A large amount of helpful demo projects
- Embarcadero RAD Studio 2010 suppored
- DB2 support added
- Microsoft Access support added
- SyBase Advantage Database Server support added
- SyBase Adaptive Server Enterprise support added
- ODBC provider added
Universal Data Access Components (UniDAC) - System Requirements
Currently UniDAC supports the following databases:
- Oracle servers: 11g, 10g, 9i, 8i, 8.0, and 7.3, including Oracle 10g Express, Oracle 8i Personal, and Lite editions.
- Oracle x86 clients: 11g, 10g, 9i, 8i, 8.0, and 7.3.
Microsoft SQL Server
- Servers: SQL Server 2008, SQL Server 2005 (including Compact and Express editions), SQL Server 2000, SQL Server 7, and MSDE.
- Clients: SQL OLE DB and SQL Native Client.
- MySQL servers: 5.1, 5.0, 4.1, 4.0, and 3.23.
- MySQL Embedded servers: 5.1, 4.1, and 4.0.
- MySQL clients: Direct mode, 5.1, 5.0, 4.1, 4.0, and 3.23.
- InterBase: versions 5.x and higher.
- Firebird: versions 2.x, 1.x.
- versions since 7.1 up to 8.3.
- version 3.
- DB2 servers: 8.0 and higher.
- DB2 clients: 8.0 and higher.
Version 95, 97, 2000, 2003, and 2007.
SyBase Adaptive Server Enterprise
- SyBase Adaptive Server Enterprise servers: 11.0 and higher.
- SyBase Adaptive Server Enterprise clients: 11.0 and higher.
SyBase Advantage Database Server
- SyBase Advantage Database Server servers: 8.0 and higher.
- Client (SyBase Advantage ODBC driver): 8.0 and higher.
UniDAC is compatible with the following IDEs:
- CodeGear C++Builder 2009
- CodeGear Delphi 2009 for Win32
- CodeGear RAD Studio 2007
- CodeGear C++Builder 2007
- CodeGear Delphi 2007 for Win32
- Turbo Delphi Professional
- Turbo Delphi for .NET Professional
- Turbo C++ Professional
- Borland Developer Studio 2006 including support of Delphi for Win32, Delphi for .NET, and C++Builder personalities
- Borland Delphi 2005
- Borland Delphi 7
- Borland Delphi 6
- Borland C++Builder 6
- Free Pascal for Win32 (only Editions with Source Code and Trial Edition)