Database basic CRUD (#27)

* started schema

* db schemas beginning

* first db schema gen

* added sqlc generation with go generate and sqlite driver

* i think these dependencies are needed

* added IF NOT EXISTS to create and CRUD for each table

* fixed missing columns

* added missing field

* fixed code generation with sqlc
This commit is contained in:
2025-04-16 13:45:44 -05:00
committed by GitHub
parent d062644a3e
commit b24e734ae3
36 changed files with 979 additions and 5 deletions
@@ -0,0 +1,60 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.28.0
// source: artists.sql
package sqlcgen
import (
"context"
)
const createArtist = `-- name: CreateArtist :one
INSERT INTO artists (name) VALUES (?)
RETURNING id, name
`
func (q *Queries) CreateArtist(ctx context.Context, name string) (Artist, error) {
row := q.db.QueryRowContext(ctx, createArtist, name)
var i Artist
err := row.Scan(&i.ID, &i.Name)
return i, err
}
const deleteArtist = `-- name: DeleteArtist :exec
DELETE FROM artists
WHERE id =?
`
func (q *Queries) DeleteArtist(ctx context.Context, id int64) error {
_, err := q.db.ExecContext(ctx, deleteArtist, id)
return err
}
const getArtist = `-- name: GetArtist :one
SELECT id, name FROM artists
WHERE id = ? LIMIT 1
`
func (q *Queries) GetArtist(ctx context.Context, id int64) (Artist, error) {
row := q.db.QueryRowContext(ctx, getArtist, id)
var i Artist
err := row.Scan(&i.ID, &i.Name)
return i, err
}
const updateArtist = `-- name: UpdateArtist :exec
UPDATE artists
SET name = ?
WHERE id =?
`
type UpdateArtistParams struct {
Name string
ID int64
}
func (q *Queries) UpdateArtist(ctx context.Context, arg UpdateArtistParams) error {
_, err := q.db.ExecContext(ctx, updateArtist, arg.Name, arg.ID)
return err
}