driver

package
v4.0.0-...-5c6b0d1 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2023 License: BSD-3-Clause Imports: 13 Imported by: 0

Documentation

Overview

Package driver implements an sqlboiler driver. It can be used by either building the main.go in the same project and using as a binary or using the side effect import.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Assemble

func Assemble(config drivers.Config) (dbinfo *drivers.DBInfo, err error)

Assemble is more useful for calling into the library so you don't have to instantiate an empty type.

func PSQLBuildQueryString

func PSQLBuildQueryString(user, pass, dbname, host string, port int, sslmode string) string

PSQLBuildQueryString builds a query string.

Types

type PostgresDriver

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

PostgresDriver holds the database connection string and a handle to the database connection.

func (*PostgresDriver) Assemble

func (p *PostgresDriver) Assemble(config drivers.Config) (dbinfo *drivers.DBInfo, err error)

Assemble all the information we need to provide back to the driver

func (*PostgresDriver) Columns

func (p *PostgresDriver) Columns(schema, tableName string, whitelist, blacklist []string) ([]drivers.Column, error)

Columns takes a table name and attempts to retrieve the table information from the database information_schema.columns. It retrieves the column names and column types and returns those as a []Column after TranslateColumnType() converts the SQL types to Go types, for example: "varchar" to "string"

func (*PostgresDriver) ForeignKeyInfo

func (p *PostgresDriver) ForeignKeyInfo(schema, tableName string) ([]drivers.ForeignKey, error)

ForeignKeyInfo retrieves the foreign keys for a given table name.

func (PostgresDriver) Imports

func (p PostgresDriver) Imports() (importers.Collection, error)

Imports for the postgres driver

func (*PostgresDriver) PrimaryKeyInfo

func (p *PostgresDriver) PrimaryKeyInfo(schema, tableName string) (*drivers.PrimaryKey, error)

PrimaryKeyInfo looks up the primary key for a table.

func (*PostgresDriver) TableNames

func (p *PostgresDriver) TableNames(schema string, whitelist, blacklist []string) ([]string, error)

TableNames connects to the postgres database and retrieves all table names from the information_schema where the table schema is schema. It uses a whitelist and blacklist.

func (*PostgresDriver) Templates

func (p *PostgresDriver) Templates() (map[string]string, error)

Templates that should be added/overridden

func (*PostgresDriver) TranslateColumnType

func (p *PostgresDriver) TranslateColumnType(c drivers.Column) drivers.Column

TranslateColumnType converts postgres database types to Go types, for example "varchar" to "string" and "bigint" to "int64". It returns this parsed data as a Column object.

func (*PostgresDriver) ViewCapabilities

func (p *PostgresDriver) ViewCapabilities(schema, name string) (drivers.ViewCapabilities, error)

ViewCapabilities return what actions are allowed for a view.

func (*PostgresDriver) ViewColumns

func (p *PostgresDriver) ViewColumns(schema, tableName string, whitelist, blacklist []string) ([]drivers.Column, error)

func (*PostgresDriver) ViewNames

func (p *PostgresDriver) ViewNames(schema string, whitelist, blacklist []string) ([]string, error)

ViewNames connects to the postgres database and retrieves all view names from the information_schema where the view schema is schema. It uses a whitelist and blacklist.

Jump to

Keyboard shortcuts

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