Skip to content

Generate Rust structs from ClickHouse rows

Notifications You must be signed in to change notification settings

ClickHouse/ch2rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ch2rs

An auxiliary utility for generating Rust structures from ClickHouse DB schemas for the official clickhouse-rs crate.

Usage

cargo install ch2rs

The crate enables rustls-tls client feature by default, which allows to work with HTTPS URLs. If rustls-tls does not work in your use case, you can install the crate with native-tls instead:

cargo install ch2rs --features native-tls

Help

$ ch2rs --help
ch2rs 0.1.7

USAGE:
    ch2rs [FLAGS] [OPTIONS] <table>

FLAGS:
    -D               Generate `Deserialize` instances
    -h, --help       Prints help information
        --owned      Generate only owned types
    -S               Generate `Serialize` instances
    -V, --version    Prints version information

OPTIONS:
    -B <bytes>...              Add `#[serde(with = "serde_bytes")]` to the provided column
    -d <database>              A database where the table is placed in [default: default]
    -I <ignore>...             Ignore a specified column
    -O <overrides>...          Override the type of the provided column
    -p <password>
        --derive <trait>...    Add `#[derive(<trait>)]` to the generated types
    -T <types>...              Override the type, e.g. 'Decimal(18, 9)=fixnum::FixedPoint<i64, typenum::U9>'
    -U <url>                   ClickHouse server's URL [default: localhost:8123]
    -u <user>

ARGS:
    <table>    The table's name

Examples

See snapshots.

About

Generate Rust structs from ClickHouse rows

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages