db

package
v0.0.0-...-24fa19e Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Author

type Author struct {
	ID          uuid.UUID      `json:"id"`
	Name        string         `json:"name"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	Description sql.NullString `json:"description"`
}

type Book

type Book struct {
	ID          uuid.UUID      `json:"id"`
	Name        string         `json:"name"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	PublishedAt time.Time      `json:"published_at"`
	Isbn        sql.NullString `json:"isbn"`
	Description sql.NullString `json:"description"`
	AuthorID    uuid.UUID      `json:"author_id"`
}

type CreateAuthorParams

type CreateAuthorParams struct {
	ID          uuid.UUID      `json:"id"`
	Name        string         `json:"name"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	Description sql.NullString `json:"description"`
}

type CreateBookParams

type CreateBookParams struct {
	ID          uuid.UUID      `json:"id"`
	Name        string         `json:"name"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
	PublishedAt time.Time      `json:"published_at"`
	Isbn        sql.NullString `json:"isbn"`
	Description sql.NullString `json:"description"`
	AuthorID    uuid.UUID      `json:"author_id"`
}

type CreateUserParams

type CreateUserParams struct {
	ID        uuid.UUID `json:"id"`
	Name      string    `json:"name"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

type DBTX

type DBTX interface {
	ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
	PrepareContext(context.Context, string) (*sql.Stmt, error)
	QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
	QueryRowContext(context.Context, string, ...interface{}) *sql.Row
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) CreateAuthor

func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (Author, error)

func (*Queries) CreateBook

func (q *Queries) CreateBook(ctx context.Context, arg CreateBookParams) (Book, error)

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)

func (*Queries) DeleteBook

func (q *Queries) DeleteBook(ctx context.Context, id uuid.UUID) error

func (*Queries) GetAllAuthors

func (q *Queries) GetAllAuthors(ctx context.Context, limit int32) ([]Author, error)

func (*Queries) GetAllBooks

func (q *Queries) GetAllBooks(ctx context.Context, limit int32) ([]Book, error)

func (*Queries) GetBookByID

func (q *Queries) GetBookByID(ctx context.Context, id uuid.UUID) (Book, error)

func (*Queries) GetBookByIsbn

func (q *Queries) GetBookByIsbn(ctx context.Context, isbn sql.NullString) (Book, error)

func (*Queries) GetUserByApiKey

func (q *Queries) GetUserByApiKey(ctx context.Context, apiKey string) (User, error)

func (*Queries) WithTx

func (q *Queries) WithTx(tx *sql.Tx) *Queries

type User

type User struct {
	ID        uuid.UUID `json:"id"`
	Name      string    `json:"name"`
	ApiKey    string    `json:"api_key"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

Jump to

Keyboard shortcuts

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