scala-sql-formatter

SQL Formatter for Scala

License

License

MIT
Categories

Categories

Scala Languages ORM Data
GroupId

GroupId

com.github.vertical-blank
ArtifactId

ArtifactId

scala-sql-formatter_2.13
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

scala-sql-formatter
SQL Formatter for Scala
Project URL

Project URL

https://github.com/vertical-blank/scala-sql-formatter
Project Organization

Project Organization

com.github.vertical-blank
Source Code Management

Source Code Management

https://github.com/vertical-blank/scala-sql-formatter

Download scala-sql-formatter_2.13

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.vertical-blank/scala-sql-formatter_2.13/ -->
<dependency>
    <groupId>com.github.vertical-blank</groupId>
    <artifactId>scala-sql-formatter_2.13</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.vertical-blank/scala-sql-formatter_2.13/
implementation 'com.github.vertical-blank:scala-sql-formatter_2.13:1.0.1'
// https://jarcasting.com/artifacts/com.github.vertical-blank/scala-sql-formatter_2.13/
implementation ("com.github.vertical-blank:scala-sql-formatter_2.13:1.0.1")
'com.github.vertical-blank:scala-sql-formatter_2.13:jar:1.0.1'
<dependency org="com.github.vertical-blank" name="scala-sql-formatter_2.13" rev="1.0.1">
  <artifact name="scala-sql-formatter_2.13" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.vertical-blank', module='scala-sql-formatter_2.13', version='1.0.1')
)
libraryDependencies += "com.github.vertical-blank" % "scala-sql-formatter_2.13" % "1.0.1"
[com.github.vertical-blank/scala-sql-formatter_2.13 "1.0.1"]

Dependencies

compile (2)

Group / Artifact Type Version
org.scala-lang : scala-library jar 2.13.0
com.github.vertical-blank : sql-formatter jar 1.0

test (1)

Group / Artifact Type Version
org.scalatest : scalatest_2.13 jar 3.1.0

Project Modules

There are no modules declared in this project.

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.

Versions

Version
1.0.1
1.0.0