Documentation
¶
Index ¶
- func EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, ...) (bool, error)
- type IConnectionInfo
- type SQLServerInfo
- func (info *SQLServerInfo) CreateColumn(column *models.ColumnDescriptor, command *strings.Builder)
- func (info *SQLServerInfo) EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, ...) error
- func (info *SQLServerInfo) EvaluateParameter(parameter *xpr.ParameterNode, command *strings.Builder)
- func (info *SQLServerInfo) ExistsTableOrView(connection *sql.DB, name string) (bool, error)
- func (info *SQLServerInfo) GetDatabaseType(datatype reflect.Type) string
- func (info *SQLServerInfo) GetSchema(connection *sql.DB, name string) (models.Schema, error)
- func (info *SQLServerInfo) GetSchemas(connection *sql.DB) ([]models.Schema, error)
- func (info *SQLServerInfo) MaskColumn(name string) string
- func (info *SQLServerInfo) ReturnIdentity(command *strings.Builder) string
- type SchemaModel
- type SqliteInfo
- func (info *SqliteInfo) CreateColumn(column *models.ColumnDescriptor, command *strings.Builder)
- func (info *SqliteInfo) EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, ...) error
- func (info *SqliteInfo) EvaluateParameter(parameter *xpr.ParameterNode, command *strings.Builder)
- func (info *SqliteInfo) ExistsTableOrView(connection *sql.DB, name string) (bool, error)
- func (info *SqliteInfo) GetDatabaseType(datatype reflect.Type) string
- func (info *SqliteInfo) GetSchema(connection *sql.DB, name string) (models.Schema, error)
- func (info *SqliteInfo) GetSchemas(connection *sql.DB) ([]models.Schema, error)
- func (info *SqliteInfo) MaskColumn(name string) string
- func (info *SqliteInfo) ReturnIdentity(command *strings.Builder) string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EvaluateFunction ¶ added in v0.1.5
func EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, eval func(interface{}) error) (bool, error)
EvaluateFunction function node evaluation which should work on all databases
Types ¶
type IConnectionInfo ¶
type IConnectionInfo interface {
// EvaluateParameter - literal used to specify parameters
//
// **Parameters**
// - function: function to evaluate
// - command: command to write evaluation result to
EvaluateParameter(parameter *xpr.ParameterNode, command *strings.Builder)
// MaskColumn masks a column for use in an sql statement
//
// **Parameters**
// - name: name of column to mask
//
// **Returns**
// - string: masked column name
MaskColumn(name string) string
// GetDatabaseType get type used in database
//
// **Parameters**
// - type: application data type
//
// **Returns**
// - string: database type name
GetDatabaseType(datatype reflect.Type) string
// EvaluateFunction evaluates representation of a function in database
//
// **Parameters**
// - function: function to evaluate
// - command: command to write evaluation result to
EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, eval func(interface{}) error) error
// ExistsTableOrView determines whether a table exists in database
//
// **Parameters**
// - connection: connection to database
// - name: name of table or view
//
// **Returns**
// - bool: true if table or view exists, false otherwise
ExistsTableOrView(connection *sql.DB, name string) (bool, error)
// CreateColumn creates sql text to use when creating a column
//
// **Parameters**
// - column: column to create
// - command: command builder string
CreateColumn(column *models.ColumnDescriptor, command *strings.Builder)
// GetSchema get schema of a table or view in database
//
// **Parameters**
// - connection: connection to database
// - name: name of table or view
//
// **Returns**
// - *Schema: schema information retrieved from database
// - error: error information if any error occured
GetSchema(connection *sql.DB, name string) (models.Schema, error)
// GetSchemas get all schemas in database
//
// **Parameters**
// - connection: connection of which to retrieve schematas
//
// **Returns**
// - []Schema: schemas in database
// - error : errors if any occured
GetSchemas(connection *sql.DB) ([]models.Schema, error)
// Adds statement to command which returns identity of last inserted row
ReturnIdentity(command *strings.Builder) string
}
IConnectionInfo - database driver specific information
type SQLServerInfo ¶ added in v0.1.1
type SQLServerInfo struct {
}
SQLServerInfo - ms sql server specific information
func (*SQLServerInfo) CreateColumn ¶ added in v0.1.1
func (info *SQLServerInfo) CreateColumn(column *models.ColumnDescriptor, command *strings.Builder)
CreateColumn creates sql text to use when creating a column
**Parameters**
- column: column to create
- command: command builder string
func (*SQLServerInfo) EvaluateFunction ¶ added in v0.1.1
func (info *SQLServerInfo) EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, eval func(interface{}) error) error
EvaluateFunction evaluates representation of a function in database
**Parameters**
- function: function to evaluate
- command: command to write evaluation result to
func (*SQLServerInfo) EvaluateParameter ¶ added in v0.1.1
func (info *SQLServerInfo) EvaluateParameter(parameter *xpr.ParameterNode, command *strings.Builder)
EvaluateParameter - literal used to specify parameters
**Parameters**
- function: function to evaluate
- command: command to write evaluation result to
func (*SQLServerInfo) ExistsTableOrView ¶ added in v0.1.1
ExistsTableOrView determines whether a table exists in database
**Parameters**
- connection: connection to database
- name: name of table or view
**Returns**
- bool: true if table or view exists, false otherwise
func (*SQLServerInfo) GetDatabaseType ¶ added in v0.1.1
func (info *SQLServerInfo) GetDatabaseType(datatype reflect.Type) string
GetDatabaseType get type used in database
**Parameters**
- type: application data type
**Returns**
- string: database type name
func (*SQLServerInfo) GetSchema ¶ added in v0.1.1
GetSchema get schema of a table or view in database
**Parameters**
- connection: connection to database
- name: name of table or view
**Returns**
- *Schema: schema information retrieved from database
- error: error information if any error occured
func (*SQLServerInfo) GetSchemas ¶ added in v0.1.1
GetSchemas get all schemas in database
**Parameters**
- connection: connection of which to retrieve schematas
**Returns**
- []Schema: schemas in database
- error : errors if any occured
func (*SQLServerInfo) MaskColumn ¶ added in v0.1.1
func (info *SQLServerInfo) MaskColumn(name string) string
MaskColumn masks a column for use in an sql statement
**Parameters**
- name: name of column to mask
**Returns**
- string: masked column name
func (*SQLServerInfo) ReturnIdentity ¶ added in v0.1.5
func (info *SQLServerInfo) ReturnIdentity(command *strings.Builder) string
ReturnIdentity adds a statement to command which returns identity of last inserted row
**Parameters**
- command: statement to modify
type SchemaModel ¶
type SchemaModel struct {
SchemaType string `database:"column=type"`
TableName string `database:"column=tbl_name"`
SQL string
}
SchemaModel model of a schema in database
type SqliteInfo ¶
type SqliteInfo struct {
}
SqliteInfo - sqlite specific information
func NewSqliteInfo ¶
func NewSqliteInfo() *SqliteInfo
NewSqliteInfo creates a new sqlite info
**Returns**
- *SqliteInfo: created sqlite connection info
func (*SqliteInfo) CreateColumn ¶
func (info *SqliteInfo) CreateColumn(column *models.ColumnDescriptor, command *strings.Builder)
CreateColumn creates sql text to use when creating a column
**Parameters**
- column: column to create
- command: command builder string
func (*SqliteInfo) EvaluateFunction ¶
func (info *SqliteInfo) EvaluateFunction(function *xpr.FunctionNode, command *strings.Builder, eval func(interface{}) error) error
EvaluateFunction evaluates representation of a function in database
**Parameters**
- function: function to evaluate
- command: command to write evaluation result to
func (*SqliteInfo) EvaluateParameter ¶ added in v0.1.1
func (info *SqliteInfo) EvaluateParameter(parameter *xpr.ParameterNode, command *strings.Builder)
EvaluateParameter - literal used to specify parameters
**Parameters**
- function: function to evaluate
- command: command to write evaluation result to
func (*SqliteInfo) ExistsTableOrView ¶
ExistsTableOrView determines whether a table exists in database
**Parameters**
- connection: connection to database
- name: name of table or view
**Returns**
- bool: true if table or view exists, false otherwise
func (*SqliteInfo) GetDatabaseType ¶
func (info *SqliteInfo) GetDatabaseType(datatype reflect.Type) string
GetDatabaseType get type used in database
**Parameters**
- type: application data type
**Returns**
- string: database type name
func (*SqliteInfo) GetSchema ¶
GetSchema get schema of a table or view in database
**Parameters**
- connection: connection to database
- name: name of table or view
**Returns**
- *Schema: schema information retrieved from database
- error: error information if any error occured
func (*SqliteInfo) GetSchemas ¶
GetSchemas get all schemas in database
**Parameters**
- connection: connection of which to retrieve schematas
**Returns**
- []Schema: schemas in database
- error : errors if any occured
func (*SqliteInfo) MaskColumn ¶
func (info *SqliteInfo) MaskColumn(name string) string
MaskColumn masks a column for use in an sql statement
**Parameters**
- name: name of column to mask
**Returns**
- string: masked column name
func (*SqliteInfo) ReturnIdentity ¶ added in v0.1.5
func (info *SqliteInfo) ReturnIdentity(command *strings.Builder) string
ReturnIdentity adds a statement to command which returns identity of last inserted row
**Parameters**
- command: statement to modify