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: 12 Imported by: 0

Documentation

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 SnowflakeBuildQueryString

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

SnowflakeBuildQueryString builds a query string for Snowflake.

Types

type SnowflakeDriver

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

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

func (*SnowflakeDriver) Assemble

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

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

func (*SnowflakeDriver) Columns

func (m *SnowflakeDriver) 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 (*SnowflakeDriver) ForeignKeyInfo

func (m *SnowflakeDriver) ForeignKeyInfo(schema, tableName string) ([]drivers.ForeignKey, error)

ForeignKeyInfo retrieves the foreign keys for a given table name.

func (SnowflakeDriver) Imports

func (SnowflakeDriver) Imports() (col importers.Collection, err error)

Imports returns important imports for the driver

func (*SnowflakeDriver) PrimaryKeyInfo

func (m *SnowflakeDriver) PrimaryKeyInfo(schema, tableName string) (*drivers.PrimaryKey, error)

PrimaryKeyInfo looks up the primary key for a table.

func (*SnowflakeDriver) TableNames

func (m *SnowflakeDriver) TableNames(schema string, whitelist, blacklist []string) ([]string, error)

TableNames connects to the mysql database and retrieves all table names from the information_schema where the table schema is public.

func (SnowflakeDriver) Templates

func (SnowflakeDriver) Templates() (map[string]string, error)

Templates that should be added/overridden

func (*SnowflakeDriver) TranslateColumnType

func (m *SnowflakeDriver) TranslateColumnType(drivers.Column) drivers.Column

TranslateColumnType converts mysql database types to Go types, for example "varchar" to "string" and "bigint" to "int64". It returns this parsed data as a Column object. Deprecated: for Snowflake enum types to be created properly TranslateTableColumnType method should be used instead.

func (*SnowflakeDriver) TranslateTableColumnType

func (m *SnowflakeDriver) TranslateTableColumnType(c drivers.Column, tableName string) drivers.Column

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

func (*SnowflakeDriver) ViewCapabilities

func (m *SnowflakeDriver) ViewCapabilities(schema, name string) (drivers.ViewCapabilities, error)

ViewCapabilities return what actions are allowed for a view.

func (*SnowflakeDriver) ViewColumns

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

func (*SnowflakeDriver) ViewNames

func (m *SnowflakeDriver) 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