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
- func Assemble(config drivers.Config) (dbinfo *drivers.DBInfo, err error)
- func Asset(name string) ([]byte, error)
- func AssetDigest(name string) ([sha256.Size]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func AssetString(name string) (string, error)
- func Digests() (map[string][sha256.Size]byte, error)
- func MustAsset(name string) []byte
- func MustAssetString(name string) string
- func PSQLBuildQueryString(user, pass, dbname, host string, port int, sslmode string) string
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- type PostgresDriver
- func (p *PostgresDriver) Assemble(config drivers.Config) (dbinfo *drivers.DBInfo, err error)
- func (p *PostgresDriver) Columns(schema, tableName string, whitelist, blacklist []string) ([]drivers.Column, error)
- func (p *PostgresDriver) ForeignKeyInfo(schema, tableName string) ([]drivers.ForeignKey, error)
- func (p PostgresDriver) Imports() (importers.Collection, error)
- func (p *PostgresDriver) PrimaryKeyInfo(schema, tableName string) (*drivers.PrimaryKey, error)
- func (p *PostgresDriver) TableNames(schema string, whitelist, blacklist []string) ([]string, error)
- func (p PostgresDriver) Templates() (map[string]string, error)
- func (p *PostgresDriver) TranslateColumnType(c drivers.Column) drivers.Column
Constants ¶
const AssetDebug = false
AssetDebug is true if the assets were built with the debug flag enabled.
Variables ¶
This section is empty.
Functions ¶
func Assemble ¶
Assemble is more useful for calling into the library so you don't have to instantiate an empty type.
func Asset ¶
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDigest ¶
AssetDigest returns the digest of the file with the given name. It returns an error if the asset could not be found or the digest could not be loaded.
func AssetDir ¶
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"}, AssetDir("data/img") would return []string{"a.png", "b.png"}, AssetDir("foo.txt") and AssetDir("notexist") would return an error, and AssetDir("") will return []string{"data"}.
func AssetInfo ¶
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetString ¶
AssetString returns the asset contents as a string (instead of a []byte).
func MustAsset ¶
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func MustAssetString ¶
MustAssetString is like AssetString but panics when Asset would return an error. It simplifies safe initialization of global variables.
func PSQLBuildQueryString ¶
PSQLBuildQueryString builds a query string.
func RestoreAsset ¶
RestoreAsset restores an asset under the given directory.
func RestoreAssets ¶
RestoreAssets restores an asset under the given directory recursively.
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 ¶
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.