SQL Data Source
The SQL data source allows for flexible importing of data stored in a variety of SQL databases. The database URL has to be in the form of a JDBC connection string:
database-type://hostname/db-name
The exact format of the connection string depends on the DBMS in use and is explained for the supported databases below. Note that not all databases require a password, depending on their configuration.
The following database drivers (JDBC) can be used for the importer configuration. Please refer to the external documentation of the specific driver for detailed usage examples. If additional JDBC drivers are required, they can be loaded dynamically.
Supported database systems
Oracle:
- URL Schema (Simplified):
oracle:<drivertype>:<user>/<password>@<database>
- URL Example (Basic):
oracle:thin:sys/password@myhost:1521:orcl
- Supported versions: Up to Oracle 12c
For the configuration of an SQL import data source, the fields for username and password can be used, while <user> / <password>
can be omitted. If you want to provide a specific role for authorizing the given user, you can use <user>
as <role>
in the user field of the connection editor. Stackoverflow has some additional information on connection strings for Oracle.
PostGreSQL
- URL Schema (Simplified):
postgresql://<host>:<port>/<database>
- URL Example (Basic):
postgresql://mydbhost:5740/mydb
- Supported databases: Postgres 8.2 and higher
IBM DB2
- URL Schema (Simplified):
db2://<server>:<port>/<databaseName>
- URL Example (Basic):
db2://sysmvs1.stl.ibm.com:5021/STLEC1
MySQL
- URL Schema (Simplified):
mysql://<host>:<port>/<databaseName>?<propertyName1=propertyValue1>&<propertyName2=propertyValue2>...
- URL Example (Basic):
mysql://localhost:3306/mydb
- Supported databases: 5.5, 5.6, 5.7, 8.0
SocketTimeOut
You can modify the timeout of the connection via the JBCD connection string parameter socketTimeout. You can set it to 0 in order to deactivate the timeout. A full connection string could then look like this:
JDBC Connection String
jdbc:mysql://hostname/database?socketTimeout=0
MariaDB
- URL Schema (Simplified):
mariadb:<replication:|failover:|sequential:|aurora:>//<host>:<portnumber>/<databaseName>?<key1>=<value1>&<key2>=<value2>
- URL Example (Basic):
mariadb://localhost:3306/mydb
- Supported databases: 5.5, 10.0, 10.1, 10.2, 10.3
MSSQL
- URL Schema (Simplified):
sqlserver://<serverName>\<instanceName>:<portNumber>;<property=value>;<property=value>
- URL Example (Basic):
sqlserver://localhost;databaseName=myDB;user=MyUser;password=MyPassword
AD-Authentication vs. MSSQL-Authentication
This does not work for Windows AD-user accounts but requires a dedicated user at the SQL server.
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException
Starting from Txture 30, the built-in MSSQL JDBC driver started validating TLS certificates when connecting to MSSQL servers.
If you do not want to store the signing CA certificate in the txture_home
, you can alternatively turn off the certificate validation:
jdbc:mssql://hostname/database?trustServerCertificate=true;encrypt=true
H2
- URL Schema (Simplified):
h2:tcp://<host>/<filepath>
- URL Example (Basic):
h2:tcp://localhost/~/test
SQLite
- URL Schema (Simplified):
sqlite:<filepath>
- URL Example (Basic):
sqlite:/path/to/database.db
- URL Example on Windows (Basic):
sqlite:C:/path/to/database.db