sqlc README

The project's README from github.com/sqlc-dev/sqlc. As one markdown file: README.md.

sqlc: A SQL Compiler

go Go Report Card

sqlc generates type-safe code from SQL. Here's how it works:

  1. You write queries in SQL.
  2. You run sqlc to generate code with type-safe interfaces to those queries.
  3. You write application code that calls the generated code.

Check out an interactive example to see it in action, and the introductory blog post for the motivation behind sqlc.

Overview

Supported languages

Additional languages can be added via plugins.

Sponsors

Development is possible thanks to our sponsors. If you would like to support sqlc, please consider sponsoring on GitHub.

Coder.com Mint.fun Mux.com

Cyberax - NaNuNaNu - Stumble - WestfalNamur - alecthomas - cameronnewman - danielbprice - davherrmann - dvob - gilcrest - gzuidhof - jeffreylo - mmcloughlin - ryohei1216 - sgielen

sqlc (sqlc-dev/sqlc)

Searching Database…

18.4K ·GitHub
Что это такое?sqlc — это компилятор SQL: вы пишете запросы на обычном SQL, а он генерирует типобезопасный код с интерфейсами к этим запросам, который вызывает ваше приложение.
Чем это отличается от ORM?Вы продолжаете писать настоящий SQL — sqlc компилирует эти запросы в типобезопасный код, который вызывает ваше приложение, а не заставляет вас вручную поддерживать сопоставление таблиц с объектами.
С чего начать работу с ним?Установите бинарник sqlc, запишите свои запросы в SQL-файлы, запустите sqlc для генерации кода, а затем вызывайте сгенерированные функции из своего приложения.
Для каких языков он умеет генерировать код?Go, Kotlin, Python и TypeScript — через официальные плагины sqlc-gen, а другие языки можно добавить через систему плагинов.
Он будет работать на Windows, macOS и Linux?Да — sqlc это один инструмент на Go, который распространяется через страницу загрузок, а Go нативно собирается под Windows, macOS и Linux.
Зачем компилировать SQL в код вместо того, чтобы использовать ORM?В README для этого есть ссылка на вводную статью в блоге; суть в том, что ваш SQL остаётся единственным источником истины, а вызывающий его код генерируется и типобезопасен.
sqlc бесплатный?Да — это open source под лицензией MIT, а разработка поддерживается через GitHub Sponsors.
sqlc трогает мою базу данных во время работы?Нет — это инструмент времени сборки: вы запускаете его, чтобы сгенерировать код, а во время работы приложение просто вызывает сгенерированные функции, как любой другой код в проекте.
What are similar projects?ent, diesel, typeorm, usql, migrate, efcore, goose, drizzle-orm
Creator
sqlc-dev
Size
24.1 MB
Stars
18.4K
Age
7y
Commits · 90 Days