ClickHouse
ToolJet can connect to the ClickHouse to read and write data.
ToolJet uses this NodeJS client for ClickHouse.
Connection
To establish a connection with the Clickhouse data source, you can either click on the +Add new data source
button located on the query panel or navigate to the Data Sources page through the ToolJet dashboard.
ToolJet requires the following to connect to your ClickHouse Database:
- Username
- Password
- Host
- Port
- Database Name
- Protocol
- Use Post
- Trim Query
- Use Gzip
- Debug
- Raw
Querying ClickHouse
After setting up the ClickHouse data source, you can click on the +
button of the query manager and select the ClickHouse data source that you added in the previous step to create a new query.
For more details on clickhouse visit Clickhouse docs.
Supported Operations:
SQL Query
Use this to operation to enter ClickHouse SQL Statements. These statements represent various kinds of action you can perform using SQL queries.
Example SQL queries
-
SELECT:
SELECT * from test array;
-
CREATE:
CREATE TABLE test array3 (
date Date,
str String,
arr Array(String),
arr2 Array (Date)
arr3 Array(UInt32) ,
id1 UUID
)ENGINE=MergeTree () ORDER BY(str) -
ALTER TABLE(add column)
ALTER TABLE test array1 ADD COLUMN Added2 UInt32;
-
SELECT WITH WHERE CLAUSE
SELECT * FROM test array1 WHERE str='Somethingl...'
-
UPDATE
ALTER TABLE test_array1 UPDATE arr = (12] WHERE str='Somethingl...'
-
DELETE
ALTER TABLE test_array1 DELETE WHERE str= 'Somethingl...'
-
NORMAL INSERT
- Step 1 - Creating Table
CREATE TABLE test array4 (
name String,
date Date
)ENGINE=MergeTree () ORDER BY (name)- Step 2 - Insert
INSERT INTO test_array4 (*) VALUES ('juvane', '1996-01-13')
infoGiving Primary Key
CREATE TABLE db.table_name
(
name1 type1, name2 type2, ...,
PRIMARY KEY(expr1[, expr2,...])]
)
ENGINE = engine;
OR
CREATE TABLE db.table_name
(
name1 type1, name2 type2, ...
)
ENGINE = engine
PRIMARY KEY(expr1[, expr2,...]);
Insert array of objects
Use this operation for inserting array of objects.
Required Parameters:
- Body
- Fields
- Table name
Example Body value:
[
{
date: '2018-01-01',
str: 'Something1...',
arr: [],
arr2: ['1985-01-02', '1985-01-03'],
arr3: [1,2,3,4,5],
id1: '102a05cb-8aaf-4f11-a442-20c3558e4384'
},
{
date: '2018-02-01',
str: 'Something2...',
arr: ['5670000000', 'Something3...'],
arr2: ['1985-02-02'],
arr3: [],
id1: 'c2103985-9a1e-4f4a-b288-b292b5209de1'
}
];