Working with ODBC data in DBeaver
DBeaver is a database management tool and SQL client that runs on Windows, Linux, macOS, and UNIX (AIX, HP-UX and Solaris) platforms.
The DBeaver SQL editor has auto completion and database-specific syntax highlighting to facilitate the creation, analysis, and debugging of complex queries.
To save its users' time, DBeaver provides SQL templates, which are snippets of commonly used SQL code. To insert the contents of a template into the SQL editor, you enter the template's name and press the TAB key.
You can use DBeaver to save tables or query results in several formats such as CSV, SQL INSERT
statements and HTML. For example, to export your query results as web page tables, right-click on the Results view in DBeaver, select Export Resultset, and then choose Export to HTML.
DBeaver can be installed either on the database server or on a remote machine. The ability to use DBeaver as a remote database manager makes it easy to administer multiple databases on multiple platforms from a single location.
Other DBeaver features include:
- The ability to browse and edit database metadata (tables, columns, keys, and indexes).
BLOB
andCLOB
support.- Scrollable resultsets.
- The ability to search database objects (tables, columns, constraints, and procedures).
- Entity relationship (ER) diagrams.
DBeaver is written in Java. To interact with a database, a Java application uses a JDBC driver. JDBC is a Java application programming interface (API) that connects Java to relational databases (and other tabular data, such as spreadsheets and flat files). A JDBC driver implements the JDBC API for a particular database. To access a database by using an ODBC driver, DBeaver uses a JDBC-ODBC Bridge driver to convert between ODBC and JDBC calls. For example, DBeaver can use the JDBC-ODBC Bridge that used to be included in the Java distribution. However even if you can get that combination to work (we couldn't — the connection failed either with a Java error or an ODBC Driver Manager error), there are some issues associated with the Java JDBC-ODBC Bridge. For example, it was never intended for production use and we have found that with some applications, NULLs
are returned when Unicode column values are queried.
As an alternative solution, the Easysoft JDBC-ODBC Bridge is a client/server product that enables a Java application such as DBeaver to access an ODBC database such as Microsoft Access. The client part of the Easysoft JDBC-ODBC Bridge is a JDBC driver. On Windows, the sever part is a Windows service that acts as an ODBC application.
The rest of this blog documents how to use the Easysoft JDBC-ODBC Bridge to access data from an ODBC database in DBeaver.
- Configure a system ODBC data source for the database that you want to connect to in DBeaver.
To do this, use the 32-bit version of ODBC Data Source Administrator on your DBeaver machine. On some versions of Windows, this is located in Control Panel > Administrative Tools. On some version of Windows, you need to search for "ODBC" in the taskbar search box. The 32-bit version of ODBC Data Source Administrator should be clearly labelled. If in doubt, in the Windows Run dialog box, enter:
%windir%\syswow64\odbcad32.exe
- Download the Easysoft JDBC-ODBC Bridge.
- Install and license the Easysoft JDBC-ODBC Bridge on the machine where the DBeaver is installed.
For installation instructions, refer to the Easysoft JDBC-ODBC Bridge documentation.
- In DBeaver, choose Database > Driver Manager
The Driver Manager dialog box is displayed.
- Choose New
The Create new driver dialog box is displayed.
- Choose Add File.
The Open driver library dialog box is displayed.
- Browse for the Easysoft JDBC-ODBC Bridge JAR file,
EJOB.jar
.EJOB.jar
is installed in the following location on the machine where you installed the Easysoft JDBC-ODBC Bridge:easysoft_install\Jars
On 64-bit Windows, the default location for
easysoft_install
isdrive:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge
.On 32-bit Windows, the default location for
easysoft_install
isdrive:\Program Files\Easysoft Limited\Easysoft JDBC-ODBC Bridge
. - Complete the dialog box fields:
Field Value Driver Name Easysoft JDBC-ODBC Bridge
Driver easysoft.sql.jobDriver
URL Template jdbc:easysoft://localhost/data_source:logonuser=windows_user:logonpassword=password
- Right-click the Database Navigator pane. From the pop-up menu, choose Create New Connection.
The Create new connection wizard starts.
- Enter
Easysoft JDBC-ODBC Bridge
in the space provided, and then choose Next. - If your database requires a user name and password, enter these connection details in the spaces provided.
- In the wizard's final screen, name the connection and choose a connection type. Choose Finish.
- Right-click the new connection the Database Navigator pane. From the pop-up menu, choose SQL Editor.
- Type a query in the right pane. Press CTRL+ENTER to execute the query.