[ WEBSITE | ISSUES | FORUM | CHANGELOG ]
This package implements SQL language support for the CodeMirror code editor.
The project page has more information, a number of examples and the documentation.
This code is released under an MIT license.
We aim to be an inclusive, welcoming community. To make that explicit, we have a code of conduct that applies to communication around the project.
-
sql(config?: SQLConfig = {}) → LanguageSupport
-
SQL language support for the given SQL dialect, with keyword completion, and, if provided, schema-based completion as extra extensions.
-
interface
SQLConfig -
Options used to configure an SQL extension.
-
dialect?: SQLDialect
-
The dialect to use. Defaults to
StandardSQL
. -
schema?: Object<readonly (string | Completion)[]>
-
An object that maps table names, optionally prefixed with a schema name (
"schema.table"
) to options (columns) that can be completed for that table. Use lower-case names here. -
tables?: readonly Completion[]
-
By default, the completions for the table names will be generated from the
schema
object. But if you want to customize them, you can pass an array of completions through this option. -
schemas?: readonly Completion[]
-
Similar to
tables
, if you want to provide completion objects for your schemas rather than using the generated ones, pass them here. -
defaultTable?: string
-
When given, columns from the named table can be completed directly at the top level.
-
defaultSchema?: string
-
When given, tables prefixed with this schema name can be completed directly at the top level.
-
upperCaseKeywords?: boolean
-
When set to true, keyword completions will be upper-case.
-
-
class
SQLDialect -
Represents an SQL dialect.
-
language: LRLanguage
-
The language for this dialect.
-
spec: SQLDialectSpec
-
The spec used to define this dialect.
-
extension: Extension
-
Returns the language for this dialect as an extension.
-
static define(spec: SQLDialectSpec) → SQLDialect
-
Define a new dialect.
-
-
type
SQLDialectSpec -
Configuration for an SQL Dialect.
-
keywords?: string
-
A space-separated list of keywords for the dialect.
-
builtin?: string
-
A space-separated string of built-in identifiers for the dialect.
-
types?: string
-
A space-separated string of type names for the dialect.
-
backslashEscapes?: boolean
-
Controls whether regular strings allow backslash escapes.
-
hashComments?: boolean
-
Controls whether # creates a line comment.
-
slashComments?: boolean
-
Controls whether
//
creates a line comment. -
spaceAfterDashes?: boolean
-
When enabled
--
comments are only recognized when there's a space after the dashes. -
doubleDollarQuotedStrings?: boolean
-
When enabled, things quoted with "$" are treated as strings, rather than identifiers.
-
doubleQuotedStrings?: boolean
-
When enabled, things quoted with double quotes are treated as strings, rather than identifiers.
-
charSetCasts?: boolean
-
Enables strings like
_utf8'str'
orN'str'
. -
operatorChars?: string
-
The set of characters that make up operators. Defaults to
"*+\-%<>!=&|~^/"
. -
specialVar?: string
-
The set of characters that start a special variable name. Defaults to
"?"
. -
identifierQuotes?: string
-
The characters that can be used to quote identifiers. Defaults to
"\""
. -
unquotedBitLiterals?: boolean
-
Controls whether bit values can be defined as 0b1010. Defaults to false.
-
treatBitsAsBytes?: boolean
-
Controls whether bit values can contain other characters than 0 and 1. Defaults to false.
-
-
StandardSQL: SQLDialect
-
The standard SQL dialect.
-
PostgreSQL: SQLDialect
-
Dialect for PostgreSQL.
-
MySQL: SQLDialect
-
MySQL dialect.
-
MariaSQL: SQLDialect
-
MSSQL: SQLDialect
-
SQL dialect for Microsoft SQL Server.
-
SQLite: SQLDialect
-
SQLite dialect.
-
Cassandra: SQLDialect
-
Dialect for Cassandra's SQL-ish query language.
-
PLSQL: SQLDialect
-
PL/SQL dialect.
-
keywordCompletionSource(dialect: SQLDialect, upperCase?: boolean = false) → CompletionSource
-
Returns a completion source that provides keyword completion for the given SQL dialect.
-
schemaCompletionSource(config: SQLConfig) → CompletionSource
-
Returns a completion sources that provides schema-based completion for the given configuration.