115 lines
2.7 KiB
YAML
115 lines
2.7 KiB
YAML
dialect:
|
|
name: "QuestDB"
|
|
display_name: "QuestDB"
|
|
versions:
|
|
- version: "8"
|
|
status: "RECOMMENDED"
|
|
|
|
types:
|
|
- name: "BYTE"
|
|
category: "INTEGER"
|
|
- name: "SHORT"
|
|
category: "INTEGER"
|
|
aliases: ["SMALLINT"]
|
|
- name: "INT"
|
|
category: "INTEGER"
|
|
aliases: ["INTEGER"]
|
|
- name: "LONG"
|
|
category: "INTEGER"
|
|
aliases: ["BIGINT"]
|
|
- name: "FLOAT"
|
|
category: "FLOAT"
|
|
- name: "DOUBLE"
|
|
category: "FLOAT"
|
|
- name: "STRING"
|
|
category: "STRING"
|
|
aliases: ["VARCHAR"]
|
|
- name: "SYMBOL"
|
|
category: "STRING"
|
|
semantic_fidelity_base: 0.8
|
|
- name: "CHAR"
|
|
category: "STRING"
|
|
- name: "BOOLEAN"
|
|
category: "BOOLEAN"
|
|
- name: "DATE"
|
|
category: "DATE"
|
|
- name: "TIMESTAMP"
|
|
category: "DATETIME"
|
|
- name: "BINARY"
|
|
category: "BINARY"
|
|
- name: "UUID"
|
|
category: "UUID"
|
|
- name: "LONG256"
|
|
category: "INTEGER"
|
|
semantic_fidelity_base: 0.4
|
|
- name: "GEOHASH"
|
|
category: "SPATIAL"
|
|
semantic_fidelity_base: 0.3
|
|
- name: "IPv4"
|
|
category: "NETWORK"
|
|
semantic_fidelity_base: 0.3
|
|
|
|
ddl_capabilities:
|
|
add_column: true
|
|
drop_column: true
|
|
rename_column: true
|
|
alter_column_type: true
|
|
create_index: false
|
|
drop_index: false
|
|
create_table: true
|
|
drop_table: true
|
|
truncate_table: true
|
|
if_not_exists: true
|
|
templates:
|
|
add_column: "ALTER TABLE {table} ADD COLUMN {column} {type}"
|
|
drop_column: "ALTER TABLE {table} DROP COLUMN {column}"
|
|
rename_column: "ALTER TABLE {table} RENAME COLUMN {old} TO {new}"
|
|
create_table: "CREATE TABLE IF NOT EXISTS {table} ({columns})"
|
|
drop_table: "DROP TABLE IF EXISTS {table}"
|
|
|
|
rollback_templates:
|
|
add_column: "ALTER TABLE {table} DROP COLUMN {column}"
|
|
drop_column: "ALTER TABLE {table} ADD COLUMN {column} {original_type}"
|
|
rename_column: "ALTER TABLE {table} RENAME COLUMN {new} TO {old}"
|
|
create_table: "DROP TABLE IF EXISTS {table}"
|
|
drop_table: "-- Restore from backup: {table}"
|
|
|
|
online_safety:
|
|
add_column:
|
|
level: "NON_BLOCKING"
|
|
cost: "LOW"
|
|
drop_table:
|
|
level: "REQUIRES_GHOST"
|
|
cost: "HIGH"
|
|
truncate:
|
|
level: "REQUIRES_GHOST"
|
|
cost: "HIGH"
|
|
|
|
destruction_level:
|
|
drop_table: "FATAL"
|
|
truncate: "DANGEROUS"
|
|
add_column: "SAFE"
|
|
create_table: "SAFE"
|
|
|
|
structural_capabilities:
|
|
max_columns_per_table: 1024
|
|
max_query_size_bytes: 65536
|
|
supports_partitioning: true
|
|
|
|
identifier_rules:
|
|
quote_char: '"'
|
|
case_sensitive: true
|
|
max_length: 256
|
|
|
|
metadata_queries:
|
|
list_tables:
|
|
sql: "SELECT name FROM tables()"
|
|
performance_profile: "LIGHT"
|
|
list_columns:
|
|
sql: "SELECT column, type FROM table_columns('{table}')"
|
|
performance_profile: "MEDIUM"
|
|
dependencies:
|
|
sql: "SELECT name FROM tables()"
|
|
depth_support: 0
|
|
performance_profile: "LIGHT"
|