planbuilder

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2023 License: Apache-2.0 Imports: 26 Imported by: 12

Documentation

Index

Constants

View Source
const OnDupValuesPrefix = "__new_ins"

Variables

View Source
var ErrMaxAnalysisIters = errors.NewKind("exceeded max analysis iterations (%d)")

ErrMaxAnalysisIters is thrown when the analysis iterations are exceeded

View Source
var (
	ErrPrimaryKeyOnNullField = errors.NewKind("All parts of PRIMARY KEY must be NOT NULL")
)

Functions

func DeepCopyNode

func DeepCopyNode(node sql.Node) (sql.Node, error)

DeepCopyNode copies a sql.Node.

func ExpressionToColumnDefaultValue

func ExpressionToColumnDefaultValue(inputExpr sql.Expression, isLiteral, isParenthesized bool) *sql.ColumnDefaultValue

ExpressionToColumnDefaultValue takes in an Expression and returns the equivalent ColumnDefaultValue if the expression is valid for a default value. If the expression represents a literal (and not an expression that returns a literal, so "5" rather than "(5)"), then the parameter "isLiteral" should be true.

func MustStringToColumnDefaultValue added in v0.17.0

func MustStringToColumnDefaultValue(ctx *sql.Context, exprStr string, outType sql.Type, nullable bool) *sql.ColumnDefaultValue

MustStringToColumnDefaultValue is used for creating default values on tables that do not go through the analyzer. Does not handle function nor column references.

func Parse

func Parse(ctx *sql.Context, cat sql.Catalog, query string) (ret sql.Node, err error)

Parse parses the given SQL |query| using the default parsing settings and returns the corresponding node.

func ParseColumnTypeString added in v0.17.0

func ParseColumnTypeString(columnType string) (sql.Type, error)

func ParseOne

func ParseOne(ctx *sql.Context, cat sql.Catalog, query string) (sql.Node, string, string, error)

func ParseOnly added in v0.17.0

func ParseOnly(ctx *sql.Context, query string, multi bool) (ast.Statement, string, string, error)

func ParseWithOptions added in v0.17.0

func ParseWithOptions(ctx *sql.Context, cat sql.Catalog, query string, options ast.ParserOptions) (ret sql.Node, err error)

func StringToColumnDefaultValue added in v0.17.0

func StringToColumnDefaultValue(ctx *sql.Context, exprStr string) (*sql.ColumnDefaultValue, error)

StringToColumnDefaultValue takes in a string representing a default value and returns the equivalent Expression.

Types

type Builder added in v0.17.0

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

func New added in v0.17.0

func New(ctx *sql.Context, cat sql.Catalog) (*Builder, error)

func (*Builder) BindOnly added in v0.17.0

func (b *Builder) BindOnly(stmt ast.Statement, s string) (ret sql.Node, err error)

func (*Builder) ConvertVal added in v0.17.0

func (b *Builder) ConvertVal(v *ast.SQLVal) sql.Expression

func (*Builder) NewFrame added in v0.17.0

func (b *Builder) NewFrame(inScope *scope, f *ast.Frame) sql.WindowFrame

func (*Builder) Parse added in v0.17.0

func (b *Builder) Parse(query string, multi bool) (ret sql.Node, parsed, remainder string, err error)

func (*Builder) ProcCtx added in v0.17.0

func (b *Builder) ProcCtx() *ProcContext

func (*Builder) SetParserOptions added in v0.17.0

func (b *Builder) SetParserOptions(opts ast.ParserOptions)

func (*Builder) TriggerCtx added in v0.17.0

func (b *Builder) TriggerCtx() *TriggerContext

func (*Builder) ViewCtx added in v0.17.0

func (b *Builder) ViewCtx() *ViewContext

type ProcContext added in v0.17.0

type ProcContext struct {
	AsOf   interface{}
	DbName string
}

ProcContext allows nested CALLs to use the same database for resolving procedure definitions without changing the underlying database roots.

type TriggerContext added in v0.17.0

type TriggerContext struct {
	Active           bool
	Call             bool
	UnresolvedTables []string
	ResolveErr       error
}

type ViewContext added in v0.17.0

type ViewContext struct {
	AsOf   interface{}
	DbName string
}

ViewContext overwrites database root source of nested calls.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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