{"id":18821482,"url":"https://github.com/vertical-blank/scala-sql-formatter","last_synced_at":"2025-04-14T00:32:40.093Z","repository":{"id":39848216,"uuid":"212560502","full_name":"vertical-blank/scala-sql-formatter","owner":"vertical-blank","description":"SQL Formatter for Scala","archived":false,"fork":false,"pushed_at":"2023-07-25T05:15:22.000Z","size":74,"stargazers_count":3,"open_issues_count":14,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-07-26T22:10:30.858Z","etag":null,"topics":["scala","scalajs","sql-formatter"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vertical-blank.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-03T11:13:40.000Z","updated_at":"2023-04-29T02:10:18.000Z","dependencies_parsed_at":"2023-02-15T14:01:45.372Z","dependency_job_id":null,"html_url":"https://github.com/vertical-blank/scala-sql-formatter","commit_stats":null,"previous_names":[],"tags_count":2,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertical-blank%2Fscala-sql-formatter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertical-blank%2Fscala-sql-formatter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertical-blank%2Fscala-sql-formatter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertical-blank%2Fscala-sql-formatter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vertical-blank","download_url":"https://codeload.github.com/vertical-blank/scala-sql-formatter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223612914,"owners_count":17173632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["scala","scalajs","sql-formatter"],"created_at":"2024-11-08T00:42:43.877Z","updated_at":"2024-11-08T00:42:44.672Z","avatar_url":"https://github.com/vertical-blank.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# scala-sql-formatter\n\n[![Build Status](https://travis-ci.org/vertical-blank/scala-sql-formatter.png?branch=master)](https://travis-ci.org/vertical-blank/scala-sql-formatter)\n[![Maven Central](https://img.shields.io/maven-central/v/com.github.vertical-blank/scala-sql-formatter_2.12.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22com.github.vertical-blank%22%20AND%20a:%22scala-sql-formatter_2.12%22)\n\nSQL Formatter for Scala.\n\nThis is a bridge to these libraries.\n\n- Running on jvm, calls [https://github.com/vertical-blank/sql-formatter](https://github.com/vertical-blank/sql-formatter)\n- Running on js, calls [https://github.com/zeroturnaround/sql-formatter](https://github.com/zeroturnaround/sql-formatter)\n\n## Usage\n\n### Scala (on JVM)\n\n```sbt\nlibraryDependencies += \"com.github.vertical-blank\" %% \"scala-sql-formatter\" % \"1.0.1\"\n```\n\n### Scala.js\n\n```sbt\nlibraryDependencies += \"com.github.vertical-blank\" %%% \"scala-sql-formatter\" % \"1.0.1\"\n\nscalaJSLinkerConfig ~= { _.withModuleKind(ModuleKind.CommonJSModule) }\n```\n\n### Examples\n\nYou can easily use `com.github.vertical_blank.sqlformatter.scala.SqlFormatter` :\n\n```scala\nSqlFormatter.format(\"SELECT * FROM table1\")\n```\n\nThis will output:\n\n```sql\nSELECT\n  *\nFROM\n  table1\n```\n\n### Dialect\n\nYou can pass dialect with `FormatConfig` :\n\n```scala\nSqlFormatter.format(\n  \"SELECT *\",\n  FormatConfig(dialect = SqlDialect.CouchbaseN1QL))\n```\n\nCurrently just four SQL dialects are supported:\n\n- StandardSQL - [Standard SQL](https://en.wikipedia.org/wiki/SQL:2011)\n- CouchbaseN1QL - [Couchbase N1QL](http://www.couchbase.com/n1ql)\n- DB2 - [IBM DB2](https://www.ibm.com/analytics/us/en/technology/db2/)\n- PLSQL - [Oracle PL/SQL](http://www.oracle.com/technetwork/database/features/plsql/index.html)\n\n### Format\n\nDefaults to two spaces.\nYou can pass indent string with `FormatConfig` to `format` :\n\n```scala\nSqlFormatter.format(\n  \"SELECT * FROM table1\",\n  FormatConfig(indent = \"    \"))\n```\n\nThis will output:\n\n```sql\nSELECT\n    *\nFROM\n    table1\n```\n\n### Placeholders replacement\n\nYou can pass `Seq` to `formatWithIndexedParams`, or `Map` to `formatWithNamedParams` :\n\n```scala\n// Named placeholders\nSqlFormatter.formatWithNamedParams(\"SELECT * FROM tbl WHERE foo = @foo\", params = Map(\"foo\" -\u003e \"'bar'\"))\n\n// Indexed placeholders\nSqlFormatter.formatWithIndexedParams(\"SELECT * FROM tbl WHERE foo = ?\", params = Seq(\"'bar'\"))\n```\n\nBoth result in:\n\n```sql\nSELECT\n  *\nFROM\n  tbl\nWHERE\n  foo = 'bar'\n```\n\nSame as the `format` method, both `formatWithNamedParams` and `formatWithIndexedParams` accept `FormatConfig`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvertical-blank%2Fscala-sql-formatter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvertical-blank%2Fscala-sql-formatter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvertical-blank%2Fscala-sql-formatter/lists"}