author

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Feb 25, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DBQuerier

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

func NewQuerier

func NewQuerier(conn genericConn) *DBQuerier

NewQuerier creates a DBQuerier that implements Querier. conn is typically *pgx.Conn, pgx.Tx, or *pgxpool.Pool.

func (*DBQuerier) ArrayAggFirstName

func (q *DBQuerier) ArrayAggFirstName(ctx context.Context, authorID int32) ([]string, error)

ArrayAggFirstName implements Querier.ArrayAggFirstName.

func (*DBQuerier) ArrayAggFirstNameBatch

func (q *DBQuerier) ArrayAggFirstNameBatch(batch genericBatch, authorID int32)

ArrayAggFirstNameBatch implements Querier.ArrayAggFirstNameBatch.

func (*DBQuerier) ArrayAggFirstNameScan

func (q *DBQuerier) ArrayAggFirstNameScan(results pgx.BatchResults) ([]string, error)

ArrayAggFirstNameScan implements Querier.ArrayAggFirstNameScan.

func (*DBQuerier) DeleteAuthors

func (q *DBQuerier) DeleteAuthors(ctx context.Context) (pgconn.CommandTag, error)

DeleteAuthors implements Querier.DeleteAuthors.

func (*DBQuerier) DeleteAuthorsBatch

func (q *DBQuerier) DeleteAuthorsBatch(batch genericBatch)

DeleteAuthorsBatch implements Querier.DeleteAuthorsBatch.

func (*DBQuerier) DeleteAuthorsByFirstName

func (q *DBQuerier) DeleteAuthorsByFirstName(ctx context.Context, firstName string) (pgconn.CommandTag, error)

DeleteAuthorsByFirstName implements Querier.DeleteAuthorsByFirstName.

func (*DBQuerier) DeleteAuthorsByFirstNameBatch

func (q *DBQuerier) DeleteAuthorsByFirstNameBatch(batch genericBatch, firstName string)

DeleteAuthorsByFirstNameBatch implements Querier.DeleteAuthorsByFirstNameBatch.

func (*DBQuerier) DeleteAuthorsByFirstNameScan

func (q *DBQuerier) DeleteAuthorsByFirstNameScan(results pgx.BatchResults) (pgconn.CommandTag, error)

DeleteAuthorsByFirstNameScan implements Querier.DeleteAuthorsByFirstNameScan.

func (*DBQuerier) DeleteAuthorsByFullName

func (q *DBQuerier) DeleteAuthorsByFullName(ctx context.Context, params DeleteAuthorsByFullNameParams) (pgconn.CommandTag, error)

DeleteAuthorsByFullName implements Querier.DeleteAuthorsByFullName.

func (*DBQuerier) DeleteAuthorsByFullNameBatch

func (q *DBQuerier) DeleteAuthorsByFullNameBatch(batch genericBatch, params DeleteAuthorsByFullNameParams)

DeleteAuthorsByFullNameBatch implements Querier.DeleteAuthorsByFullNameBatch.

func (*DBQuerier) DeleteAuthorsByFullNameScan

func (q *DBQuerier) DeleteAuthorsByFullNameScan(results pgx.BatchResults) (pgconn.CommandTag, error)

DeleteAuthorsByFullNameScan implements Querier.DeleteAuthorsByFullNameScan.

func (*DBQuerier) DeleteAuthorsScan

func (q *DBQuerier) DeleteAuthorsScan(results pgx.BatchResults) (pgconn.CommandTag, error)

DeleteAuthorsScan implements Querier.DeleteAuthorsScan.

func (*DBQuerier) FindAuthorByID

func (q *DBQuerier) FindAuthorByID(ctx context.Context, authorID int32) (FindAuthorByIDRow, error)

FindAuthorByID implements Querier.FindAuthorByID.

func (*DBQuerier) FindAuthorByIDBatch

func (q *DBQuerier) FindAuthorByIDBatch(batch genericBatch, authorID int32)

FindAuthorByIDBatch implements Querier.FindAuthorByIDBatch.

func (*DBQuerier) FindAuthorByIDScan

func (q *DBQuerier) FindAuthorByIDScan(results pgx.BatchResults) (FindAuthorByIDRow, error)

FindAuthorByIDScan implements Querier.FindAuthorByIDScan.

func (*DBQuerier) FindAuthorNames

func (q *DBQuerier) FindAuthorNames(ctx context.Context, authorID int32) ([]FindAuthorNamesRow, error)

FindAuthorNames implements Querier.FindAuthorNames.

func (*DBQuerier) FindAuthorNamesBatch

func (q *DBQuerier) FindAuthorNamesBatch(batch genericBatch, authorID int32)

FindAuthorNamesBatch implements Querier.FindAuthorNamesBatch.

func (*DBQuerier) FindAuthorNamesScan

func (q *DBQuerier) FindAuthorNamesScan(results pgx.BatchResults) ([]FindAuthorNamesRow, error)

FindAuthorNamesScan implements Querier.FindAuthorNamesScan.

func (*DBQuerier) FindAuthors

func (q *DBQuerier) FindAuthors(ctx context.Context, firstName string) ([]FindAuthorsRow, error)

FindAuthors implements Querier.FindAuthors.

func (*DBQuerier) FindAuthorsBatch

func (q *DBQuerier) FindAuthorsBatch(batch genericBatch, firstName string)

FindAuthorsBatch implements Querier.FindAuthorsBatch.

func (*DBQuerier) FindAuthorsScan

func (q *DBQuerier) FindAuthorsScan(results pgx.BatchResults) ([]FindAuthorsRow, error)

FindAuthorsScan implements Querier.FindAuthorsScan.

func (*DBQuerier) FindFirstNames

func (q *DBQuerier) FindFirstNames(ctx context.Context, authorID int32) ([]*string, error)

FindFirstNames implements Querier.FindFirstNames.

func (*DBQuerier) FindFirstNamesBatch

func (q *DBQuerier) FindFirstNamesBatch(batch genericBatch, authorID int32)

FindFirstNamesBatch implements Querier.FindFirstNamesBatch.

func (*DBQuerier) FindFirstNamesScan

func (q *DBQuerier) FindFirstNamesScan(results pgx.BatchResults) ([]*string, error)

FindFirstNamesScan implements Querier.FindFirstNamesScan.

func (*DBQuerier) InsertAuthor

func (q *DBQuerier) InsertAuthor(ctx context.Context, firstName string, lastName string) (int32, error)

InsertAuthor implements Querier.InsertAuthor.

func (*DBQuerier) InsertAuthorBatch

func (q *DBQuerier) InsertAuthorBatch(batch genericBatch, firstName string, lastName string)

InsertAuthorBatch implements Querier.InsertAuthorBatch.

func (*DBQuerier) InsertAuthorScan

func (q *DBQuerier) InsertAuthorScan(results pgx.BatchResults) (int32, error)

InsertAuthorScan implements Querier.InsertAuthorScan.

func (*DBQuerier) InsertAuthorSuffix

func (q *DBQuerier) InsertAuthorSuffix(ctx context.Context, params InsertAuthorSuffixParams) (InsertAuthorSuffixRow, error)

InsertAuthorSuffix implements Querier.InsertAuthorSuffix.

func (*DBQuerier) InsertAuthorSuffixBatch

func (q *DBQuerier) InsertAuthorSuffixBatch(batch genericBatch, params InsertAuthorSuffixParams)

InsertAuthorSuffixBatch implements Querier.InsertAuthorSuffixBatch.

func (*DBQuerier) InsertAuthorSuffixScan

func (q *DBQuerier) InsertAuthorSuffixScan(results pgx.BatchResults) (InsertAuthorSuffixRow, error)

InsertAuthorSuffixScan implements Querier.InsertAuthorSuffixScan.

func (*DBQuerier) StringAggFirstName

func (q *DBQuerier) StringAggFirstName(ctx context.Context, authorID int32) (*string, error)

StringAggFirstName implements Querier.StringAggFirstName.

func (*DBQuerier) StringAggFirstNameBatch

func (q *DBQuerier) StringAggFirstNameBatch(batch genericBatch, authorID int32)

StringAggFirstNameBatch implements Querier.StringAggFirstNameBatch.

func (*DBQuerier) StringAggFirstNameScan

func (q *DBQuerier) StringAggFirstNameScan(results pgx.BatchResults) (*string, error)

StringAggFirstNameScan implements Querier.StringAggFirstNameScan.

type DeleteAuthorsByFullNameParams

type DeleteAuthorsByFullNameParams struct {
	FirstName string `json:"FirstName"`
	LastName  string `json:"LastName"`
	Suffix    string `json:"Suffix"`
}

type FindAuthorByIDRow

type FindAuthorByIDRow struct {
	AuthorID  int32   `json:"author_id"`
	FirstName string  `json:"first_name"`
	LastName  string  `json:"last_name"`
	Suffix    *string `json:"suffix"`
}

type FindAuthorNamesRow

type FindAuthorNamesRow struct {
	FirstName *string `json:"first_name"`
	LastName  *string `json:"last_name"`
}

type FindAuthorsRow

type FindAuthorsRow struct {
	AuthorID  int32   `json:"author_id"`
	FirstName string  `json:"first_name"`
	LastName  string  `json:"last_name"`
	Suffix    *string `json:"suffix"`
}

type InsertAuthorSuffixParams

type InsertAuthorSuffixParams struct {
	FirstName string `json:"FirstName"`
	LastName  string `json:"LastName"`
	Suffix    string `json:"Suffix"`
}

type InsertAuthorSuffixRow

type InsertAuthorSuffixRow struct {
	AuthorID  int32   `json:"author_id"`
	FirstName string  `json:"first_name"`
	LastName  string  `json:"last_name"`
	Suffix    *string `json:"suffix"`
}

type Querier

type Querier interface {
	// FindAuthorById finds one (or zero) authors by ID.
	FindAuthorByID(ctx context.Context, authorID int32) (FindAuthorByIDRow, error)
	// FindAuthorByIDBatch enqueues a FindAuthorByID query into batch to be executed
	// later by the batch.
	FindAuthorByIDBatch(batch genericBatch, authorID int32)
	// FindAuthorByIDScan scans the result of an executed FindAuthorByIDBatch query.
	FindAuthorByIDScan(results pgx.BatchResults) (FindAuthorByIDRow, error)

	// FindAuthors finds authors by first name.
	FindAuthors(ctx context.Context, firstName string) ([]FindAuthorsRow, error)
	// FindAuthorsBatch enqueues a FindAuthors query into batch to be executed
	// later by the batch.
	FindAuthorsBatch(batch genericBatch, firstName string)
	// FindAuthorsScan scans the result of an executed FindAuthorsBatch query.
	FindAuthorsScan(results pgx.BatchResults) ([]FindAuthorsRow, error)

	// FindAuthorNames finds one (or zero) authors by ID.
	FindAuthorNames(ctx context.Context, authorID int32) ([]FindAuthorNamesRow, error)
	// FindAuthorNamesBatch enqueues a FindAuthorNames query into batch to be executed
	// later by the batch.
	FindAuthorNamesBatch(batch genericBatch, authorID int32)
	// FindAuthorNamesScan scans the result of an executed FindAuthorNamesBatch query.
	FindAuthorNamesScan(results pgx.BatchResults) ([]FindAuthorNamesRow, error)

	// FindFirstNames finds one (or zero) authors by ID.
	FindFirstNames(ctx context.Context, authorID int32) ([]*string, error)
	// FindFirstNamesBatch enqueues a FindFirstNames query into batch to be executed
	// later by the batch.
	FindFirstNamesBatch(batch genericBatch, authorID int32)
	// FindFirstNamesScan scans the result of an executed FindFirstNamesBatch query.
	FindFirstNamesScan(results pgx.BatchResults) ([]*string, error)

	// DeleteAuthors deletes authors with a first name of "joe".
	DeleteAuthors(ctx context.Context) (pgconn.CommandTag, error)
	// DeleteAuthorsBatch enqueues a DeleteAuthors query into batch to be executed
	// later by the batch.
	DeleteAuthorsBatch(batch genericBatch)
	// DeleteAuthorsScan scans the result of an executed DeleteAuthorsBatch query.
	DeleteAuthorsScan(results pgx.BatchResults) (pgconn.CommandTag, error)

	// DeleteAuthorsByFirstName deletes authors by first name.
	DeleteAuthorsByFirstName(ctx context.Context, firstName string) (pgconn.CommandTag, error)
	// DeleteAuthorsByFirstNameBatch enqueues a DeleteAuthorsByFirstName query into batch to be executed
	// later by the batch.
	DeleteAuthorsByFirstNameBatch(batch genericBatch, firstName string)
	// DeleteAuthorsByFirstNameScan scans the result of an executed DeleteAuthorsByFirstNameBatch query.
	DeleteAuthorsByFirstNameScan(results pgx.BatchResults) (pgconn.CommandTag, error)

	// DeleteAuthorsByFullName deletes authors by the full name.
	DeleteAuthorsByFullName(ctx context.Context, params DeleteAuthorsByFullNameParams) (pgconn.CommandTag, error)
	// DeleteAuthorsByFullNameBatch enqueues a DeleteAuthorsByFullName query into batch to be executed
	// later by the batch.
	DeleteAuthorsByFullNameBatch(batch genericBatch, params DeleteAuthorsByFullNameParams)
	// DeleteAuthorsByFullNameScan scans the result of an executed DeleteAuthorsByFullNameBatch query.
	DeleteAuthorsByFullNameScan(results pgx.BatchResults) (pgconn.CommandTag, error)

	// InsertAuthor inserts an author by name and returns the ID.
	InsertAuthor(ctx context.Context, firstName string, lastName string) (int32, error)
	// InsertAuthorBatch enqueues a InsertAuthor query into batch to be executed
	// later by the batch.
	InsertAuthorBatch(batch genericBatch, firstName string, lastName string)
	// InsertAuthorScan scans the result of an executed InsertAuthorBatch query.
	InsertAuthorScan(results pgx.BatchResults) (int32, error)

	// InsertAuthorSuffix inserts an author by name and suffix and returns the
	// entire row.
	InsertAuthorSuffix(ctx context.Context, params InsertAuthorSuffixParams) (InsertAuthorSuffixRow, error)
	// InsertAuthorSuffixBatch enqueues a InsertAuthorSuffix query into batch to be executed
	// later by the batch.
	InsertAuthorSuffixBatch(batch genericBatch, params InsertAuthorSuffixParams)
	// InsertAuthorSuffixScan scans the result of an executed InsertAuthorSuffixBatch query.
	InsertAuthorSuffixScan(results pgx.BatchResults) (InsertAuthorSuffixRow, error)

	StringAggFirstName(ctx context.Context, authorID int32) (*string, error)
	// StringAggFirstNameBatch enqueues a StringAggFirstName query into batch to be executed
	// later by the batch.
	StringAggFirstNameBatch(batch genericBatch, authorID int32)
	// StringAggFirstNameScan scans the result of an executed StringAggFirstNameBatch query.
	StringAggFirstNameScan(results pgx.BatchResults) (*string, error)

	ArrayAggFirstName(ctx context.Context, authorID int32) ([]string, error)
	// ArrayAggFirstNameBatch enqueues a ArrayAggFirstName query into batch to be executed
	// later by the batch.
	ArrayAggFirstNameBatch(batch genericBatch, authorID int32)
	// ArrayAggFirstNameScan scans the result of an executed ArrayAggFirstNameBatch query.
	ArrayAggFirstNameScan(results pgx.BatchResults) ([]string, error)
}

Querier is a typesafe Go interface backed by SQL queries.

Methods ending with Batch enqueue a query to run later in a pgx.Batch. After calling SendBatch on pgx.Conn, pgxpool.Pool, or pgx.Tx, use the Scan methods to parse the results.

Jump to

Keyboard shortcuts

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