Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

vertical-blank/scala-sql-formatter

Repository files navigation

scala-sql-formatter

Build Status Maven Central

SQL Formatter for Scala.

This is a bridge to these libraries.

Usage

Scala (on JVM)

libraryDependencies += "com.github.vertical-blank" %% "scala-sql-formatter" % "1.0.1"

Scala.js

libraryDependencies += "com.github.vertical-blank" %%% "scala-sql-formatter" % "1.0.1"
scalaJSLinkerConfig ~= { _.withModuleKind(ModuleKind.CommonJSModule) }

Examples

You can easily use com.github.vertical_blank.sqlformatter.scala.SqlFormatter :

SqlFormatter.format("SELECT * FROM table1")

This will output:

SELECT
 *
FROM
 table1

Dialect

You can pass dialect with FormatConfig :

SqlFormatter.format(
 "SELECT *",
 FormatConfig(dialect = SqlDialect.CouchbaseN1QL))

Currently just four SQL dialects are supported:

Format

Defaults to two spaces. You can pass indent string with FormatConfig to format :

SqlFormatter.format(
 "SELECT * FROM table1",
 FormatConfig(indent = " "))

This will output:

SELECT
 *
FROM
 table1

Placeholders replacement

You can pass Seq to formatWithIndexedParams, or Map to formatWithNamedParams :

// Named placeholders
SqlFormatter.formatWithNamedParams("SELECT * FROM tbl WHERE foo = @foo", params = Map("foo" -> "'bar'"))
// Indexed placeholders
SqlFormatter.formatWithIndexedParams("SELECT * FROM tbl WHERE foo = ?", params = Seq("'bar'"))

Both result in:

SELECT
 *
FROM
 tbl
WHERE
 foo = 'bar'

Same as the format method, both formatWithNamedParams and formatWithIndexedParams accept FormatConfig.

About

SQL Formatter for Scala

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

Languages

AltStyle によって変換されたページ (->オリジナル) /