88
99 "github.com/spf13/cobra"
1010
11+ "github.com/sqlc-dev/sqlc/internal/engine/clickhouse"
1112 "github.com/sqlc-dev/sqlc/internal/engine/dolphin"
1213 "github.com/sqlc-dev/sqlc/internal/engine/postgresql"
1314 "github.com/sqlc-dev/sqlc/internal/engine/sqlite"
@@ -27,15 +28,18 @@ Examples:
2728 echo "SELECT * FROM users" | sqlc parse --dialect mysql
2829
2930 # Parse SQLite SQL
30- sqlc parse --dialect sqlite queries.sql` ,
31+ sqlc parse --dialect sqlite queries.sql
32+
33+ # Parse ClickHouse SQL
34+ sqlc parse --dialect clickhouse queries.sql` ,
3135 Args : cobra .MaximumNArgs (1 ),
3236 RunE : func (cmd * cobra.Command , args []string ) error {
3337 dialect , err := cmd .Flags ().GetString ("dialect" )
3438 if err != nil {
3539 return err
3640 }
3741 if dialect == "" {
38- return fmt .Errorf ("--dialect flag is required (postgresql, mysql, or sqlite )" )
42+ return fmt .Errorf ("--dialect flag is required (postgresql, mysql, sqlite, or clickhouse )" )
3943 }
4044
4145 // Determine input source
@@ -71,8 +75,11 @@ Examples:
7175 case "sqlite" :
7276 parser := sqlite .NewParser ()
7377 stmts , err = parser .Parse (input )
78+ case "clickhouse" :
79+ parser := clickhouse .NewParser ()
80+ stmts , err = parser .Parse (input )
7481 default :
75- return fmt .Errorf ("unsupported dialect: %s (use postgresql, mysql, or sqlite )" , dialect )
82+ return fmt .Errorf ("unsupported dialect: %s (use postgresql, mysql, sqlite, or clickhouse )" , dialect )
7683 }
7784 if err != nil {
7885 return fmt .Errorf ("parse error: %w" , err )
0 commit comments