Database driver XML
Note: This feature is available in Lite, Enterprise, Ultimate and Team editions only.
Table of contents
Overview
This guide provides instructions on how to set up and use XML files with DBeaver. The XML driver supports standard XML files, including both attribute-based and nested element-based structures. You can retrieve data and apply filters, sorting, and other operations, even combining data from multiple files.
Important: When using the XML driver, all connected XML files are read-only. To make changes, you need to update the original files outside DBeaver.
Before you start, you need to create a connection in DBeaver and select the appropriate XML driver. If you haven’t done this, see our Database Connection article.
XML Files driver connection settings
This section describes how to set up a connection using the XML driver. The connection settings page requires the following fields:
Field | Description | Options |
---|---|---|
Connect by (Path/URL) | Choose whether to connect using a local host path or a URL. | |
File paths | Specify the location of the XML file(s). Choose an action: | When Editing or Adding, choose from: |
- Edit: Modify an existing file or folder selection. | - File: Select a single XML file. | |
- Folder: Choose a directory containing multiple XML files. | ||
- Add: Add a new file or folder. | - Remote: Access a remote folder via Cloud Storage. This feature is available only in Ultimate and Team Editions. | |
- Remove: Delete a selected file or folder. | ||
Driver name | This field will be auto-filled based on your selected driver type. | |
Driver settings | If there are any specific driver settings, configure them here. |
Tip: When using the Folder option, DBeaver scans the directory up to two levels deep for XML files. For more information, see folder structure. If you select a folder, DBeaver organizes files in schemas based on their directory structure.
Features and capabilities
Advanced SQL query capabilities
The XML driver supports the full range of SQL queries:
- Simple queries (e.g.,
SELECT * FROM table
): Data is read directly from the XML file. Complex queries (e.g., using
WHERE
,JOIN
,ORDER BY
,GROUP BY
): When a complex query is executed for the first time, the driver imports the entire XML file into an internal database to enable advanced SQL functions. Subsequent queries run faster because the data is already imported into an internal database.
Folder structure
When working with a folder containing multiple XML files, DBeaver organizes them as follows:
Folder structure | Schema in DBeaver |
---|---|
Root files | Default schema |
Subfolder files | Schema named after the subfolder |
Files in deeper folders | Ignored |
If your folder looks like this:
Data/
├── employees.xml
├── sales.xml
└── Reports/
└── monthly.xml
└── yearly.xml
DBeaver will create:
Default
schema:employees
,sales
Reports
schema:monthly
,yearly
Tip: To focus on specific files, consider selecting individual files or folders when configuring the connection.
Internal database
When you execute a complex query (such as WHERE
, JOIN
, GROUP BY
, or ORDER BY
.), on an XML file for the first
time, the XML driver processes the data by importing it into a temporary internal SQLite database.
By default, this internal database stores data temporarily on the disk during your session and is cleared when DBeaver
restarts. To speed up queries on the same file in future sessions, you can specify the internalDbFilePath
option in
the Driver properties tab (e.g., C:\User\database.db
) to reuse the processed data.
For more details on driver properties, see File-based driver properties.
Additional features
DBeaver provides additional features compatible with XML driver, but not exclusive to it:
Category | Feature |
---|---|
Data Transfer | Data Export |
Data Visualization | Visual Query Builder |
Charts |