20 lines
560 B
SQL
20 lines
560 B
SQL
-- name: CreateTemplate :one
|
|
INSERT INTO templates (id, project_id, name, doc, version)
|
|
VALUES ($1, $2, $3, $4, 1)
|
|
RETURNING *;
|
|
|
|
-- name: GetTemplate :one
|
|
SELECT * FROM templates WHERE id = $1 AND project_id = $2;
|
|
|
|
-- name: ListTemplates :many
|
|
SELECT * FROM templates WHERE project_id = $1 ORDER BY created_at;
|
|
|
|
-- name: UpdateTemplate :one
|
|
UPDATE templates
|
|
SET name = $3, doc = $4, version = version + 1, updated_at = now()
|
|
WHERE id = $1 AND project_id = $2
|
|
RETURNING *;
|
|
|
|
-- name: DeleteTemplate :exec
|
|
DELETE FROM templates WHERE id = $1 AND project_id = $2;
|