Module: Upkeep::SQLGlot::Dialect
- Defined in:
- lib/upkeep/sqlglot.rb
Constant Summary collapse
- NAMES =
%w[ ansi athena bigquery clickhouse databricks doris dremio drill druid duckdb exasol fabric hive materialize mysql oracle postgres presto prql redshift risingwave singlestore snowflake spark sqlite starrocks tableau teradata trino tsql ].freeze
- ALIASES =
{ "mariadb" => "mysql", "mssql" => "tsql", "postgresql" => "postgres", "sqlserver" => "tsql" }.freeze
Class Method Summary collapse
Class Method Details
.resolve(name) ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'lib/upkeep/sqlglot.rb', line 36 def resolve(name) return nil if name.nil? key = name.to_s.downcase.strip return key if NAMES.include?(key) return ALIASES.fetch(key) if ALIASES.key?(key) raise ArgumentError, "Unknown SQL dialect: #{name.inspect}" end |