Last active
October 24, 2023 04:19
-
-
Save Braden-Preston/7f284f1064825c2434ba6dfc76eeda9a to your computer and use it in GitHub Desktop.
User Queries SQLC
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Code generated by sqlc. DO NOT EDIT. | |
// versions: | |
// sqlc v1.22.0 | |
// source: query.sql | |
package models | |
import ( | |
"context" | |
"database/sql" | |
) | |
const createUser = `-- name: CreateUser :one | |
INSERT INTO | |
users (name) | |
VALUES | |
(?) RETURNING id, name | |
` | |
func (q *Queries) CreateUser(ctx context.Context, name sql.NullString) (User, error) { | |
row := q.db.QueryRowContext(ctx, createUser, name) | |
var i User | |
err := row.Scan(&i.ID, &i.Name) | |
return i, err | |
} | |
const deleteUser = `-- name: DeleteUser :exec | |
DELETE FROM users | |
WHERE | |
id = ? | |
` | |
func (q *Queries) DeleteUser(ctx context.Context, id int64) error { | |
_, err := q.db.ExecContext(ctx, deleteUser, id) | |
return err | |
} | |
const getUser = `-- name: GetUser :one | |
SELECT | |
id, name | |
FROM | |
users | |
WHERE | |
id = ? | |
LIMIT | |
1 | |
` | |
func (q *Queries) GetUser(ctx context.Context, id int64) (User, error) { | |
row := q.db.QueryRowContext(ctx, getUser, id) | |
var i User | |
err := row.Scan(&i.ID, &i.Name) | |
return i, err | |
} | |
const listUsers = `-- name: ListUsers :many | |
SELECT | |
id, name | |
FROM | |
users | |
ORDER BY | |
name | |
` | |
func (q *Queries) ListUsers(ctx context.Context) ([]User, error) { | |
rows, err := q.db.QueryContext(ctx, listUsers) | |
if err != nil { | |
return nil, err | |
} | |
defer rows.Close() | |
var items []User | |
for rows.Next() { | |
var i User | |
if err := rows.Scan(&i.ID, &i.Name); err != nil { | |
return nil, err | |
} | |
items = append(items, i) | |
} | |
if err := rows.Close(); err != nil { | |
return nil, err | |
} | |
if err := rows.Err(); err != nil { | |
return nil, err | |
} | |
return items, nil | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment