ToolJet/docs/versioned_docs/version-2.65.0/data-sources/clickhouse.md
Pratik Agrawal f6bef78dec
[docs]: Update data-sources guides - databrick, dynamodb, elasticsearch, gcs, sheets, graphql (#10737)
* [docs]: Update data-sources guides - Clickhouse, CosmosDB, CouchDB

* Added padding before h2

* Updated 2.50-LTS/data-source/databricks.md

* Updated Databrick

* Updated DynamoDB

* Updated elasticsearch

* Updated GCS

* Updated Google Sheets

* Updated GraphQL

* Updated graphql v2

* Updated graphql v3

* Updated sheets v2

* updated sheets v3

* Updated gcs v2

* updated elasticsearch v2

* updated dynamodb v2

* Updated databrick v2

* Added missing images

* Updated docs in 2.68.0
2024-09-17 16:03:33 +05:30

4.8 KiB

id title
clickhouse ClickHouse

ToolJet can connect to the ClickHouse to read and write data.

:::info 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
ClickHouse connection

Querying ClickHouse

After setting up the ClickHouse data source, you can click on the + Add button of the query manager and select the ClickHouse data source that you added in the previous step to create a new query.

:::info 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;
    
    ClickHouse SQL Statement operation
  • 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)
    
    ClickHouse SQL Statement operation
  • ALTER TABLE (add column)

    ALTER TABLE test array1 ADD COLUMN Added2 UInt32;
    
    ClickHouse SQL Statement operation
  • SELECT WITH WHERE CLAUSE

    SELECT * FROM test array1 WHERE str='Somethingl...'
    
    ClickHouse SQL Statement operation
  • UPDATE

    ALTER TABLE test_array1 UPDATE arr = (12] WHERE str='Somethingl...'
    
    ClickHouse SQL Statement operation
  • DELETE

    ALTER TABLE test_array1 DELETE WHERE str= 'Somethingl...'
    
    ClickHouse SQL Statement operation
  • NORMAL INSERT

    Step 1 - Creating Table

    CREATE TABLE test array4 (
    	name String,
    	date Date
    )ENGINE=MergeTree () ORDER BY (name)
    
    ClickHouse SQL Statement operation

    Step 2 - Insert

    INSERT INTO test_array4 (*) VALUES ('juvane', '1996-01-13')
    
    ClickHouse SQL Statement operation

    :::info Giving 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'
			}
		];
ClickHouse Insert array of objects operation