UniDAC

Database Specific Aspects of 64-bit Development

Oracle Connectivity Aspects

OCI mode:

Since at design-time Rad Studio XE 2 works only with x32 libraries and if a connection to the server is needed at design-time, you need to install Oracle Client (x32) regardless of the intended platform. (If the x32 client is needed only for development, you can use only Oracle Instant Client). By default, UniDAC use DEFAULT of Oracle Client, that is why, if a x64 client is the default client at design-time, you need to specify a x32 client. To prevent conflicts between different versions of Oracle Client on the end-user side, you can leave the Home property empty, in this case, the default client will be used.

DIRECT mode:

Since there is no need to install Oracle Client for the DIRECT mode, the development of applications for the x64 platform does not differ from the development of application for Windows x86.

SQL Server Connectivity Aspects

If you are working in the Direct mode or developing a 32-bit application only, then the development process will not be different for you, except some peculiarities of each particular platform. But if you are developing a 64-bit application, you have to be aware of specifics of working with client libraries at design-time and run-time. To connect to a SQL Server database at design-time, you must have its 32-bit client library. You have to place it to the C:\Windows\SysWOW64 directory. This requirement flows out from the fact that RAD Studio XE2 is a 32-bit application and it cannot load 64-bit libraries at design-time. To work with a SQL Server database at run-time (64-bit application), you must have the 64-bit client library placed to the C:\Windows\System32 directory.

MySQL Connectivity Aspects

Client mode:

If you are developing a 64-bit application, you have to be aware of specifics of working with client libraries at design-time and run-time. To connect to a MySQL database at design-time, you must have its 32-bit client library. You have to place it to the C:\Windows\SysWOW64 directory. This requirement flows out from the fact that RAD Studio XE2 is a 32-bit application and it cannot load 64-bit libraries at design-time. To work with a MySQL database in run-time (64-bit application), you must have the 64-bit client library placed to the C:\Windows\System32 directory.

DIRECT mode:

Since there is no need to install client library for the DIRECT mode, the specifics of developing applications that use UniDAC as data access components, depends exclusively on peculiarities of each target platform.

InterBase and FireBird Connectivity Aspects

To work with InterBase and Firebird, UniDAC uses theirs client libraries (gds32.dll and fbclient.dll correspondingly). If you are developing a 32-bit application, then the development process will not be different for you, except some peculiarities of each particular platform. But if you are developing a 64-bit application, you have to be aware of specifics of working with client libraries at design-time and run-time. To connect to an InterBase or Firebird database at design-time, you must have its 32-bit client library. You have to place it to the C:\Windows\SysWOW64 directory. This requirement flows out from the fact that RAD Studio XE2 is a 32-bit application and it cannot load 64-bit libraries in design-time. To work with an InterBase or Firebird database at run-time (64-bit application), you must have the 64-bit client library placed to the C:\Windows\System32 directory.

PostgreSQL Connectivity Aspects

Since UniDAC does not require that the PostgreSQL client be installed to work with the database, the development of applications for the x64 platform does not differ from the development of application for Windows x86.

SQLite Connectivity Aspects

Presently, developers of SQLite do not provide a ready driver for x64 platforms, that is why, for x64 applications you need to manually compile the sqlite library (for example, in MS VisualStudio). By default, the sqlite libraries must be placed to the following directories: for Win32 you need only the x32 library placed into C:\Windows\System32, and for windows x64, the x64 library should be placed to C:\Windows\System32 and the x32 library to C:\Windows\SysWow64. >If the libraries are located as described above, you don't have to make additional settings for different target platforms when developing applications to work with the SQLite database; the required libraries will be correctly located both at design-time and run-time. Besides, when delivering your application to its end-users, you can supply the required library (x32 or x64) together with the application by placing it to the folder that contains the executable file. (If at design-time you don't need to connect to the database, then the x32 library is not needed either.)

If the libraries are located in different directories, then at design-time you will have to specify the path to the x32 library in the ClientLibrary option, and when building the final application for the x64 platform, you will have to specify the path to the x64 library.

MS Access Connectivity Aspects

When developing cross-platform application to work with the MS Access database, you should remember that it is impossible to install two (32- and 64-bit) drivers on the same system (Microsoft limitation). That is why, if you need to connect to the database at design-time, the 32-bit driver must be installed on the development computer, since Rad Studio XE 2 uses x32 libraries at design-time. If no such connection is needed, you can install the x64 MS Access driver. All the other aspects of x64 and x32 development are identical.

Other ODBC Connectivity Aspects

As regards all other providers using ODBC, for information on drivers for different platforms and specifics contact their developers.

© 1997-2020 Devart. All Rights Reserved. Request Support DAC Forum Provide Feedback