sqlc-connect

command module
v0.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 22, 2024 License: MIT Imports: 20 Imported by: 0

README

sqlc-connect

Generate connect-go server from SQL. If you’re searching for a SQLC plugin, use sqlc-gen-go-server.

Requirements
go install github.com/sqlc-dev/sqlc/cmd/sqlc@latest
go install github.com/bufbuild/buf/cmd/buf@latest
Installation
go install github.com/walterwanderley/sqlc-connect@latest
Example
  1. Create a queries.sql file:
--queries.sql

CREATE TABLE authors (
  id   BIGSERIAL PRIMARY KEY,
  name text      NOT NULL,
  bio  text,
  created_at TIMESTAMP
);

-- name: GetAuthor :one
SELECT * FROM authors
WHERE id = $1 LIMIT 1;

-- name: ListAuthors :many
SELECT * FROM authors
ORDER BY name;

-- name: CreateAuthor :one
INSERT INTO authors (
  name, bio, created_at
) VALUES (
  $1, $2, $3
)
RETURNING *;

-- name: DeleteAuthor :exec
DELETE FROM authors
WHERE id = $1;

  1. Create a sqlc.yaml file
version: "2"
sql:
- schema: "./queries.sql"
  queries: "./queries.sql"
  engine: "postgresql"
  gen:
    go:
      out: "internal/author"
      
  1. Execute sqlc
sqlc generate
  1. Execute sqlc-connect
sqlc-connect -m "authors"
  1. Run the generated server
go run . -db [Database Connection URL] -dev
  1. Enjoy!
go install github.com/fullstorydev/grpcui/cmd/grpcui@latest
grpcui -plaintext localhost:5000
Editing the generated code
  • It's safe to edit any generated code that doesn't have the DO NOT EDIT indication at the very first line.

  • After modify a SQL file, execute these commands below:

sqlc generate
go generate
  • After modify a *.proto file, execute buf generate.
Similar Projects

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL