# Packages
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Copyright 2023 Dolthub, Inc.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Functions
AllRangeColumnExpr returns a RangeColumnExpr representing all values.
BaseSessionFromConnection is a SessionBuilder that returns a base session for the given connection and remote address.
CastSQLError returns a *mysql.SQLError with the error code and in some cases, also a SQL state, populated for the specified error object.
ClosedRangeColumnExpr returns a RangeColumnExpr representing {l <= x <= u}.
ConvertToBool converts a value to a boolean.
ConvertToValue converts the interface to a sql value.
CustomRangeColumnExpr returns a RangeColumnExpr defined by the bounds given.
DBTableIter iterates over all tables returned by db.GetTableNames() calling cb for each one until all tables have been processed, or an error is returned from the callback, or the cont flag is false when returned from the callback.
DebugString returns a debug string for the Node or Expression given.
Describe produces a human-readable string for |n|, based on the values set in |options|.
No description provided by the author
EmptyRangeColumnExpr returns the empty RangeColumnExpr for the given type.
EvaluateCondition evaluates a condition, which is an expression whose value will be nil or coerced boolean.
EventOnScheduleEveryIntervalFromString returns *EventOnScheduleEveryInterval parsing given interval string such as `2 DAY` or `'1:2' MONTH_DAY`.
EventStatusFromString returns EventStatus based on the given string value.
FormatRow returns a formatted string representing this row's values.
GenerateCreateTableCheckConstraintClause returns check constraint clause string for 'CREATE TABLE' statement for given check constraint.
GenerateCreateTableColumnDefinition returns column definition string for 'CREATE TABLE' statement for given column.
GenerateCreateTableForiegnKeyDefinition returns foreign key constraint definition string for 'CREATE TABLE' statement for given foreign key.
GenerateCreateTableIndexDefinition returns index definition string for 'CREATE TABLE' statement for given index.
GenerateCreateTablePrimaryKeyDefinition returns primary key definition string for 'CREATE TABLE' statement for given column(s).
GenerateCreateTableStatement returns 'CREATE TABLE' statement with given table names and column definition statements in order and the collation and character set names for the table.
GetCoercibility returns the coercibility of the given node or expression.
GetColExprTypes returns a list of RangeColumnExpr type fields, defaulting to Null types if all columns expressions are Null.
No description provided by the author
GetRangeCutKey returns the inner value from the given RangeCut.
GetRangeCutMax returns the RangeCut with the highest value.
GetRangeCutMin returns the RangeCut with the lowest value.
GetTableInsensitive implements a case-insensitive map lookup for tables keyed off of the table name.
GetTableNameInsensitive implements a case-insensitive search of a slice of table names.
GetTimeValueFromStringInput returns time.Time in system timezone (SYSTEM = time.Now().Location()).
cc: https://dev.mysql.com/doc/refman/8.0/en/temporary-files.html.
GreaterOrEqualRangeColumnExpr returns a RangeColumnExpr representing {x >= l}.
GreaterThanRangeColumnExpr returns a RangeColumnExpr representing {x > l}.
HasAvailableMemory reports whether more memory is available to the program if it hasn't reached the max memory limit.
HasDefaultValue checks if session variable value is the default one.
HashOf returns a hash of the given value to be used as key in a cache.
IncrementStatusVariable increments the value of the status variable by integer val.
Inspect traverses the plan in depth-first order: It starts by calling f(expr); expr must not be nil.
IntersectRanges intersects each Range for each column expression.
IsFalse coerces EvaluateCondition interface{} response to boolean.
No description provided by the author
IsTrue coerces EvaluateCondition interface{} response to boolean.
LessOrEqualRangeColumnExpr returns a RangeColumnExpr representing {x <= u}.
LessThanRangeColumnExpr returns a RangeColumnExpr representing {x < u}.
LoadSqlMode loads the SQL mode using the session data contained in |ctx| and returns a SqlMode instance that can be used to query which modes are enabled.
MakeColSet returns a set initialized with the given values.
No description provided by the author
No description provided by the author
No description provided by the author
NewBaseSession creates a new empty session.
NewBaseSessionWithClientServer creates a new session with data.
NewCharacterSetsIterator returns a new CharacterSetsIterator.
NewCollationsIterator returns a new CollationsIterator.
No description provided by the author
No description provided by the author
NewColumnDefaultValue returns a new ColumnDefaultValue expression.
NewContext creates a new query context.
No description provided by the author
NewCrossJoinFDs makes functional dependencies for a cross join between two relations.
No description provided by the author
No description provided by the author
NewDynamicPrivilegedOperation returns a new PrivilegedOperation for the specified dynamic privileges.
NewEmptyContext returns a default context with default values.
No description provided by the author
NewExternalStoredProcedureRegistry creates a new, empty instance of ExternalStoredProcedureRegistry.
NewFastIntSet returns a set initialized with the given values.
No description provided by the author
No description provided by the author
No description provided by the author
NewIndexBuilder returns a new IndexBuilder.
No description provided by the author
NewIndexRegistry returns a new Index Registry.
NewInnerJoinFDs makes functional dependencies for an inner join between two relations.
No description provided by the author
NewLockSubsystem creates a LockSubsystem object.
No description provided by the author
No description provided by the author
No description provided by the author
NewMemoryManager creates a new manager with the given memory reporter.
NewPrimaryKeySchema constructs a new PrimaryKeySchema.
NewPrivilegedOperation returns a new PrivilegedOperation with the given parameters.
NewProjectFDs returns a new functional dependency set projecting a subset of cols.
No description provided by the author
NewRangeColumnExprTree creates a new RangeColumnExprTree constructed from an initial range.
NewRow creates a row from the given values.
No description provided by the author
NewSpanIter creates a RowIter executed in the given span.
No description provided by the author
NewSqlModeFromString returns a new SqlMode instance, constructed from the specified |sqlModeString| that has a comma delimited list of SQL modes (e.g.
No description provided by the author
No description provided by the author
NewTableRowIter returns a new iterator over the rows in the partitions of the table given.
No description provided by the author
NewTreePrinter creates a new tree printer.
No description provided by the author
NewUnresolvedColumnDefaultValue returns a column default.
No description provided by the author
NewView creates a View with the specified name and definition.
NewViewKey creates a ViewKey ensuring both names are lowercase.
NewViewRegistry creates an empty ViewRegistry.
No description provided by the author
No description provided by the author
No description provided by the author
NillaryWithChildren is a common implementation of expression.WithChildren for expressions with no children.
NotNullRangeColumnExpr returns the not null RangeColumnExpr for the given type.
No description provided by the author
NullRangeColumnExpr returns the null RangeColumnExpr for the given type.
OpenRangeColumnExpr returns a RangeColumnExpr representing {l < x < u}.
OrderedCuts returns the given Cuts in order from lowest-touched values to highest-touched values.
ParseCharacterSet takes in a string representing a CharacterSet and returns the result if a match is found, or an error if not.
ParseCollation takes in an optional character set and collation, along with the binary attribute if present, and returns a valid collation or error.
PartitionsToPartitionIter creates a PartitionIter that iterates over the given partitions.
PrivilegeTypeFromString returns the matching PrivilegeType for the given string.
QuoteIdentifier wraps the specified identifier in backticks and escapes all occurrences of backticks in the identifier by replacing them with double backticks.
QuoteIdentifiers wraps each of the specified identifiers in backticks, escapes all occurrences of backticks in the identifier, and returns a slice of the quoted identifiers.
No description provided by the author
RemoveOverlappingRanges removes all overlap between all ranges.
ResolveCoercibility returns the collation to use by comparing coercibility, along with giving priority to binary collations.
RowIterToRows converts a row iterator to a slice of rows.
RowsToRowIter creates a RowIter that iterates over the given rows.
No description provided by the author
SchemaToPrimaryKeySchema adapts the schema given to a PrimaryKey schema using the primary keys of the table given, if present.
SimplifyRangeColumn combines all RangeColumnExprs that are connected and returns a new slice.
SortRanges sorts the given ranges, returning a new slice of ranges.
UnwrapError removes any wrapping errors (e.g.
ValidatePrimaryKeyDrop validates that a primary key may be dropped.
Walk traverses the expression tree in depth-first order.
WalkWithNode traverses the expression tree in depth-first order.
WithMemoryManager adds the given memory manager to the context.
WithPid adds the given pid to the context.
No description provided by the author
WithQuery adds the given query to the context.
WithRootSpan sets the root span of the context.
WithServices sets the services for the Context.
WithSession adds the given session to the context.
WithTracer adds the given tracer to the context.
# Constants
No description provided by the author
No description provided by the author
Ascending order.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
CharacterSet_Unspecified is used when a character set has not been specified, either explicitly or implicitly.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ChecksumKey is the key in an index config to store the checksum.
Closed bounds represent inclusion.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Collation_Unspecified is used when a collation has not been specified, either explicitly or implicitly.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
DateLayout is the layout of the MySQL date format in the representation Go understands.
Descending order.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
False is the numeric representation of False as defined by MySQL.
No description provided by the author
No explicit action was specified.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
IndexBatchSize is the number of rows to save at a time when creating indexes.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
IndexNotReady means the index is not ready to be used.
No description provided by the author
No description provided by the author
No description provided by the author
IndexOutdated means the index is loaded but will not be used because the contents in it are outdated.
IndexReady means the index can be used.
No description provided by the author
No description provided by the author
No description provided by the author
InformationSchemaDatabaseName is the name of the information schema database.
No description provided by the author
No description provided by the author
No description provided by the author
LockDoesNotExist is the state where a lock has never been created.
LockFree is the state where a lock has been created, but is not currently owned by any user.
LockInUse is the state where a lock has been acquired by a user.
MaxIdentifierLength is the maximum number of characters permissible in MySQL identifiers, like column or table names.
No description provided by the author
No description provided by the author
NullsFirst puts the null values before any other values.
NullsLast puts the null values after all other values.
No description provided by the author
Open bounds represent exclusion.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
During initial connection and handshake.
Currently running a query, possibly streaming the response.
Connected, not running a query.
QueryKey to access query in the context.
This range represents every possible value.
This range covers a finite set of values with the lower and upperbounds inclusive.
This range covers a finite set of values with the lowerbound inclusive and upperbound exclusive.
This range represents the empty set of values.
A range matching only NULL.
This range is equivalent to checking for all values greater than or equal to the lowerbound.
This range is equivalent to checking for all values greater than the lowerbound.
This range is invalid, which should not be possible.
This range is equivalent to checking for all values less than or equal to the upperbound.
This range is equivalent to checking for all values less than the upperbound.
This range covers a finite set of values with the lowerbound exclusive and upperbound inclusive.
This range covers a finite set of values with the lower and upperbounds exclusive.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SystemVariableScope_Both is set when the system variable exists in both the global and session contexts.
SystemVariableScope_Global is set when the system variable exists only in the global context.
SystemVariableScope_Persist is set when the system variable is global and persisted.
SystemVariableScope_PersistOnly is set when the system variable is persisted outside of server context.
SystemVariableScope_ResetPersist is used to remove a persisted variable.
SystemVariableScope_Session is set when the system variable exists only in the session context.
TimestampDatetimeLayout is the formatting string with the layout of the timestamp using the format of Go "time" package.
True is the numeric representation of True as defined by MySQL.
No description provided by the author
No description provided by the author
No description provided by the author
# Variables
ErrAddForeignKeyDuplicateColumn is returned when an ALTER TABLE ADD FOREIGN KEY statement has the same column multiple times.
ErrAggregationUnsupported is returned when the analyzer has failed to push down an Aggregation in an expression to a GroupBy node.
ErrAlterTableCollationNotSupported is thrown when the table doesn't support ALTER TABLE COLLATE statements.
ErrAlterTableNotSupported is thrown when the table doesn't support ALTER TABLE statements.
ErrAmbiguousColumnInOrderBy is returned when an order by column is ambiguous.
ErrAmbiguousColumnName is returned when there is a column reference that is present in more than one table.
ErrAmbiguousColumnOrAliasName is returned when a column or alias name can't be qualified to a table or alias definition.
ErrAsOfNotSupported is thrown when an AS OF query is run on a database that can't support it.
ErrBadSpatialIdxCol is thrown when attempting to define a SPATIAL index over a non-geometry column.
ErrCallIncorrectParameterCount is returned when a CALL statement has the incorrect number of parameters.
No description provided by the author
ErrCannotCopyWindowFrame is returned when we inherit a window frame with a frame clause (replacement without parenthesis is OK).
ErrCantDropFieldOrKey is returned when a table invokes DropPrimaryKey on a keyless table.
ErrCantDropIndex is return when a table can't drop an index due to a foreign key relationship.
ErrCharSetFailedToEncode is returned when a character set fails encoding.
ErrCharSetIntroducer is returned when a character set introducer is not attached to a string.
ErrCharSetInvalidString is returned when an invalid string is given for a character set.
ErrCharSetNotYetImplementedTemp is returned when the character set is valid but has not yet been implemented.
ErrCharSetUnknown is returned when the character set is not a recognized MySQL character set.
ErrCheckConstraintInvalidatedByColumnAlter is returned when an alter column statement would invalidate a check constraint.
ErrCheckConstraintViolated is returned when a CONSTRAINT CHECK is called with a sub-query expression.
ErrChildrenAlreadyWritten is returned when the children have already been written.
ErrCircularWindowInheritance is returned when a WINDOW clause has a circular dependency.
ErrCollatedExprWrongType is returned when the wrong type is given to a CollatedExpression.
ErrCollationIllegalMix is returned when two different collations are used in a scenario where they are not compatible.
ErrCollationInvalidForCharSet is returned when the wrong collation is given for the character set when parsing.
ErrCollationMalformedString is returned when a malformed string is encountered during a collation-related operation.
ErrCollationNotSupportedOnUniqueTextIndex is thrown when a unique index is created on a TEXT column, with no prefix length specified, and the collation is case-insensitive or accent-insensitive, meaning we can't reliably use a content-hashed field to detect uniqueness.
ErrCollationNotYetImplementedTemp is returned when the collation is valid but has not yet been implemented.
ErrCollationUnknown is returned when the collation is not a recognized MySQL collation.
ErrColumnCountMismatch is returned when a view, derived table or common table expression has a declared column list with a different number of columns than the schema of the table.
ErrColumnDefaultDatetimeOnlyFunc is returned when a non datetime/timestamp column attempts to declare now/current_timestamp as a default value literal.
ErrColumnDefaultReturnedNull is returned when a default expression evaluates to nil but the column is non-nullable.
ErrColumnDefaultSubquery is returned when a default value contains a subquery.
ErrColumnExists is returned when an ALTER TABLE statement would create a duplicate column.
ErrColumnNotFound is returned when the column does not exist in any table in scope.
ErrColumnNumberDoesNotMatch is returned when the number of columns in result does not match expected number of variables.
No description provided by the author
ErrConflictingExternalQuery is thrown when a scope's parent has a conflicting sort or limit node.
No description provided by the author
ErrConvertToSQL is returned when Convert failed.
ErrCreateTableNotSupported is thrown when the database doesn't support table creation.
ErrCteRecursionLimitExceeded is returned when a recursive CTE's execution stack depth exceeds the static limit.
ErrCursorAlreadyOpen is returned when a CURSOR is already open.
ErrCursorNotFound is returned when a CURSOR cannot be found.
ErrCursorNotOpen is returned when a CURSOR has not yet been opened.
ErrDatabaseAccessDeniedForUser is returned when attempting to access a database that the user does not have permission for, regardless of whether that database actually exists.
ErrDatabaseCollationsNotSupported is thrown when a database does not allow updating its collation.
ErrDatabaseExists is returned when CREATE DATABASE attempts to create a database that already exists.
ErrDatabaseNotFound is thrown when a database is not found.
ErrDatabaseWriteLocked is returned when a database is locked in read-only mode to avoid conflicts with an active server.
ErrDeclareConditionDuplicate is returned when a DECLARE CONDITION statement with the same name was declared in the current scope.
ErrDeclareConditionNotFound is returned when SIGNAL/RESIGNAL references a non-existent DECLARE CONDITION.
ErrDeclareConditionOrderInvalid is returned when a DECLARE ..
ErrDeclareCursorDuplicate is returned when a DECLARE ..
ErrDeclareCursorOrderInvalid is returned when a DECLARE ..
ErrDeclareHandlerDuplicate is returned when a DECLARE ..
ErrDeclareHandlerOrderInvalid is returned when a DECLARE ..
ErrDeclareHandlerUndo is returned when a DECLARE ..
ErrDeclareVariableDuplicate is returned when a DECLARE statement reuses an existing variable name in the current scope.
ErrDeclareVariableOrderInvalid is returned when a DECLARE statement, for variables, is at an invalid location.
ErrDeleteRowNotFound is returned when row being deleted was not found.
ErrDiffSRIDs is thrown when comparing two spatial types that have different SRIDs when they should be the same.
ErrDropColumnReferencedInDefault is returned when a column cannot be dropped as it is referenced by another column's default value.
ErrDroppedJoinFilters is returned when we removed filters from a join, but failed to re-insert them.
ErrDropTableNotSupported is thrown when the database doesn't support dropping tables.
ErrDuplicateAliasOrTable should be returned when a query contains a duplicate alias / table name.
ErrDuplicateColumn is returned when a table has two columns with the same name.
ErrDuplicateEntry is returns when a duplicate entry is placed on an index such as a UNIQUE or a Primary Key.
No description provided by the author
ErrDuplicateKey is returned when a duplicate key is defined on a table.
ErrEventAlreadyExists is returned when an event does not exist.
ErrEventCreateStatementInvalid is returned when an EventDatabase returns a CREATE EVENT statement that is invalid.
ErrEventDoesNotExist is returned when an event does not exist.
ErrEventsNotSupported is returned when attempting to create an event on a database that doesn't support them.
ErrExistingView is returned when a CREATE VIEW statement uses a name that already exists.
ErrExpectedSingleRow is returned when a subquery executed in normal queries or aggregation function returns more than 1 row without an attached IN clause.
ErrExpectedTableFoundView is returned when attempting to rename a view using ALTER TABLE statement.
ErrExternalProcedureAmbiguousOverload is returned when an external stored procedure is overloaded and has two functions with the same number of parameters.
ErrExternalProcedureFirstReturn is returned when an external stored procedure's first return type is incorrect.
ErrExternalProcedureInvalidParamType is returned when one of an external stored procedure's parameters have an invalid type.
ErrExternalProcedureMissingContextParam is returned when an external stored procedure's first parameter is not the context.
ErrExternalProcedureNonFunction is returned when an external stored procedure is given something other than the expected function type.
ErrExternalProcedurePointerVariadic is returned when an external stored procedure's variadic parameter has a pointer type.
ErrExternalProcedureReturnTypes is returned when an external stored procedure's return types are incorrect.
ErrExternalProcedureSecondReturn is returned when an external stored procedure's second return type is incorrect.
ErrFetchIncorrectCount is returned when a FETCH does not use the correct number of variables.
ErrFileExists is returned when a file already exists.
ErrForeignKeyChildViolation is called when a rows is added but there is no parent row, and a foreign key constraint fails.
ErrForeignKeyColumnCountMismatch is called when the declared column and referenced column counts do not match.
ErrForeignKeyColumnTypeMismatch is returned when the declared column's type and referenced column's type do not match.
ErrForeignKeyDepthLimit is returned when the CASCADE depth limit has been reached.
ErrForeignKeyDropColumn is returned when attempting to drop a column used in a foreign key.
ErrForeignKeyDropIndex is returned when attempting to drop an index used in a foreign key when there are no other indexes which may be used in its place.
ErrForeignKeyDropTable is returned when attempting to drop a table used in a foreign key.
ErrForeignKeyDuplicateName is returned when a foreign key already exists with the given name.
ErrForeignKeyMissingColumns is returned when an ALTER TABLE ADD FOREIGN KEY statement does not provide any columns.
ErrForeignKeyMissingReferenceIndex is returned when the referenced columns in a foreign key do not have an index.
ErrForeignKeyNotFound is returned when a foreign key was not found.
ErrForeignKeyNotResolved is called when an add or update is attempted on a foreign key that has not been resolved yet.
ErrForeignKeyParentViolation is called when a parent row that is deleted has children, and a foreign key constraint fails.
ErrForeignKeySetDefault is returned when attempting to set a referential action as SET DEFAULT.
ErrForeignKeySetNullNonNullable is returned when attempting to set a referential action as SET NULL when the column is non-nullable.
ErrForeignKeyTextBlob is returned when a TEXT or BLOB column is used in a foreign key, which are not valid types.
ErrForeignKeyTypeChange is returned when attempting to change the type of some column used in a foreign key.
ErrForeignKeyTypeChangeSetNull is returned when attempting to change a column's type to disallow NULL values when a foreign key referential action is SET NULL.
ErrFullTextDatabaseNotSupported is returned when a database does not support the creation of Full-Text indexes.
ErrFullTextDifferentCollations is returned when creating a Full-Text index on columns that have different collations.
ErrFullTextDuplicateColumn is returned when a Full-Text index declares the same column multiple times.
ErrFullTextInvalidColumnType is returned when a Full-Text index is declared on a non-text column.
ErrFullTextMatchAgainstNotColumns is returned when the provided MATCH(...) columns are not column names.
ErrFullTextMatchAgainstSameTable is returned when the provided MATCH(...) columns belong to different tables.
ErrFullTextMissingColumn is returned when a Full-Text column cannot be found.
ErrFullTextNotSupported is returned when a table does not support the creation of Full-Text indexes.
ErrFunctionNotFound is thrown when a function is not found.
ErrGeneratedColumnValue is returned when a value is provided for a generated column.
ErrGeneratedColumnWithDefault is returned when a column specifies both a default and a generated value.
ErrGrantRevokeIllegalPrivilege is returned when a GRANT or REVOKE statement is malformed, or attempts to use privilege incorrectly.
ErrGrantRevokeIllegalPrivilegeWithMessage is returned when a GRANT or REVOKE statement is malformed, or attempts to use privilege incorrectly and an additional message needs to be provided to the user.
ErrGrantRevokeRoleDoesNotExist is returned when a user or role does not exist when attempting to grant or revoke roles.
ErrGrantUserDoesNotExist is returned when a user does not exist when attempting to grant them privileges.
ErrIllegalGISValue is thrown when a spatial type constructor receives a non-geometric when one should be provided.
ErrImmutableDatabaseProvider is returned when attempting to edit an immutable database databaseProvider.
ErrIncompatibleAsOf is thrown when an AS OF clause is used in an incompatible manner, such as when using an AS OF expression with a view when the view definition has its own AS OF expressions.
ErrIncompatibleDefaultType is returned when a provided default cannot be coerced into the type of the column.
ErrIncompleteFullTextIntegration is returned when some portions of Full-Text are implemented but not all of them.
No description provided by the author
ErrIndexDeleteInvalidStatus is returned when the index trying to delete does not have a ready or outdated state.
ErrIndexExpressionAlreadyRegistered is the error returned when there is already an index with the same expression.
ErrIndexIDAlreadyRegistered is the error returned when there is already an index with the same ID.
ErrIndexNotFound is returned when the index could not be found.
No description provided by the author
ErrInsertIntoNonNullableDefaultNullColumn is returned when an INSERT excludes a field which is non-nullable and has no default/autoincrement.
ErrInsertIntoNonNullableProvidedNull is called when a null value is inserted into a non-nullable column.
ErrInvalidArgument is returned when an argument to a function is invalid.
ErrInvalidArgumentDetails is returned when the argument is invalid with details of a specific function.
ErrInvalidArgumentNumber is returned when the number of arguments to call a function is different from the function arity.
ErrInvalidArgumentType is thrown when a function receives invalid argument types.
ErrInvalidAsOfExpression is returned when an expression for AS OF cannot be used.
ErrInvalidAutoIncCols is returned when an auto_increment column cannot be applied.
No description provided by the author
ErrInvalidBlobTextKey is returned for an index on a blob or text column with no key length specified.
ErrInvalidCheckConstraint is returned when a check constraint is defined incorrectly.
ErrInvalidChildrenNumber is returned when the WithChildren method of a node or expression is called with an invalid number of arguments.
ErrInvalidChildType is returned when the WithChildren method of a node or expression is called with an invalid child type.
No description provided by the author
ErrInvalidColTypeDefinition is returned when a column type-definition has argument violations.
ErrInvalidColumnDefaultValue is returned when column default function value is not wrapped in parentheses for column types excluding datetime and timestamp.
ErrInvalidColumnNumber is returned when a tuple has an invalid number of arguments.
ErrInvalidConstraintFunctionNotSupported is returned when a CONSTRAINT CHECK is called with an unsupported function expression.
ErrInvalidConstraintSubqueryNotSupported is returned when a CONSTRAINT CHECK is called with a sub-query expression.
ErrInvalidDefaultValueOrder is returned when a default value references a column that comes after it and contains a default expression.
ErrInvalidExpressionNumber is returned when the WithExpression method of a node is called with an invalid number of arguments.
ErrInvalidGISData is thrown when a "ST_<spatial_type>FromText" function receives a malformed string.
ErrInvalidIdentifier is returned when an identifier is invalid.
ErrInvalidIndexName is called when we try to create an index with an unusable name.
ErrInvalidIndexPrefix is returned for an index prefix on a non-string column, or the prefix is longer than string itself, or just unsupported.
ErrInvalidJson is returned when a JSON string doesn't represent valid JSON.
ErrInvalidJSONText is returned when a JSON string cannot be parsed or unmarshalled.
No description provided by the author
ErrInvalidOperandColumns is returned when the columns in the left operand and the elements of the right operand don't match.
No description provided by the author
ErrInvalidRefInView is returned when querying existing view that references non-existent table.
No description provided by the author
ErrInvalidSQLValType is returned when a SQL value is of the incorrect type during parsing.
ErrInvalidSRID is thrown when attempting to create a Geometry with an invalid SRID.
ErrInvalidSyntax is returned for syntax errors that aren't picked up by the parser, e.g.
ErrInvalidSystemVariableValue is returned when a system variable is assigned a value that it does not accept.
ErrInvalidType is thrown when there is an unexpected type at some part of the execution tree.
No description provided by the author
ErrInvalidUpdateInAfterTrigger is returned when a trigger attempts to assign to a new row in an AFTER trigger.
ErrInvalidUpdateOfOldRow is returned when a trigger attempts to assign to an old row's value with SET.
ErrInvalidUseOfOldNew is returned when a trigger attempts to make use of OLD or NEW references when they don't exist.
ErrInvalidValue is returned when a given value does not match what is expected.
ErrInvalidValueType is returned when a given value's type does not match what is expected.
ErrInvalidWindowInheritance is returned when a window and its dependency contains conflicting partitioning, ordering, or framing clauses.
ErrJSONObjectAggNullKey is returned when JSON_OBJECTAGG is run on a table with NULL keys.
ErrKeyColumnDoesNotExist is returned when a table invoked CreatePrimaryKey with a non-existent column.
ErrKeyNotFound is returned when the key could not be found in the cache.
ErrKeyTooLong is returned for an index on a blob or text column that is longer than 3072 bytes.
ErrKeyZero is returned for an index on a blob or text column that is 0 in length.
ErrLoadDataCannotOpen is returned when a LOAD DATA operation is unable to open the file specified.
ErrLoadDataCharacterLength is returned when a symbol is of the wrong character length for a LOAD DATA operation.
ErrLockDeadlock is the go-mysql-server equivalent of ER_LOCK_DEADLOCK.
ErrLockDoesNotExist is the kind of error returned when a named lock does not exist and the operation does not created it.
ErrLockNotOwned is the kind of error returned when attempting an operation against a lock that the given context does not own.
ErrLockTimeout is the kind of error returned when acquiring a lock takes longer than the user specified timeout.
ErrLoopLabelNotFound is returned when a control flow statement references a non-existent loop.
ErrLoopRedefinition is returned when a loop with the same label has already been declared in the current block.
ErrMergeJoinExpectsComparerFilters is returned when we attempt to build a merge join with an invalid filter.
ErrMisusedAlias is returned when a alias is defined and used in the same projection.
ErrMoreThanOneRow is returned when the result consists of multiple rows, when only one row is expected.
ErrMultiplePrimaryKeysDefined is returned when a table invokes CreatePrimaryKey with a primary key already defined.
ErrNoAutoIncrementCol is returned when there is no auto increment column defined on a table.
ErrNoDatabaseSelected is thrown when a database is not selected and the query requires one.
ErrNodeAlreadyWritten is returned when the node has already been written.
ErrNodeNotWritten is returned when the children are printed before the node.
ErrNoForeignKeySupport is returned when the table does not support FOREIGN KEY operations.
ErrNoFullTextIndexFound is returned when the relevant Full-Text index cannot be found.
ErrNoJoinFilters is returned when we attempt to build a filtered join without filters.
ErrNoMemoryAvailable is returned when there is no more available memory.
ErrNonAggregatedColumnWithoutGroupBy is thrown when an aggregate function is used with the implicit, all-rows grouping and another projected expression contains a non-aggregated column.
ErrNoSRID is thrown when attempting to create a Geometry with a non-existent SRID.
ErrNoTablesUsed is returned when there is no table provided or dual table is defined with column access.
No description provided by the author
ErrNotMatchingSRID is returned for SRID values not matching.
ErrNotMatchingSRIDWithColName is returned for error of SRID values not matching with column name detail.
No description provided by the author
ErrNotTuple is returned when the value is not a tuple.
ErrNullableSpatialIdx is thrown when creating a SPATIAL index with a nullable column.
ErrPartitionNotFound is thrown when a partition key on a table is not found.
ErrPidAlreadyUsed is returned when the pid is already registered.
ErrPrimaryKeyViolation is returned when a primary key constraint is violated This is meant to wrap a sql.UniqueKey error, which provides the key string.
ErrPrivilegeCheckFailed is returned when a user does not have the correct privileges to perform an operation.
ErrProcedureCallAsOfReadOnly is returned when a CALL ..
ErrProcedureCreateStatementInvalid is returned when a StoredProcedureDatabase returns a CREATE PROCEDURE statement that is invalid.
ErrProcedureInvalidBodyStatement is returned when a stored procedure has a statement that is invalid inside of procedures.
ErrProcedureNestedCallAsOf is returned when a stored procedure has a CALL ..
ErrProcedureRecursiveCall is returned when a stored procedure has a CALL statement that refers to itself.
No description provided by the author
ErrReadOnly is returned when the engine has been set to Read Only but a write operation was attempted.
ErrReadOnlyTransaction is returned when a write query is executed in a READ ONLY transaction.
ErrRecursiveCTEMissingUnion is returned when a recursive CTE is not a UNION or UNION ALL node.
ErrRecursiveCTENotUnion is returned when an INTERSECT or EXCEPT includes a Recursive CTE.
ErrRenameTableNotSupported is thrown when the database doesn't support renaming tables.
ErrRevokeUserDoesNotExist is returned when a user does not exist when attempting to revoke privileges from them.
ErrRoleCreationFailure is returned when attempting to create a role and it fails for any reason.
ErrRoleDeletionFailure is returned when attempting to create a role and it fails for any reason.
ErrSavepointDoesNotExist is returned when a RELEASE SAVEPOINT or ROLLBACK TO SAVEPOINT statement references a non-existent savepoint identifier.
ErrSecureFilePriv is returned when an outfile/dumpfile path is invalid or not under the secure-file-priv directory.
ErrSessionDoesNotSupportPersistence is thrown when a feature is not already supported.
ErrShowGrantsUserDoesNotExist is returned when a user does not exist when attempting to show their grants.
ErrSignalOnlySqlState is returned when SIGNAL/RESIGNAL references a DECLARE CONDITION for a MySQL error code.
ErrSpatialRefSysAlreadyExists is thrown when attempting to create a spatial reference system with an existing SRID.
ErrSpatialTypeConversion is returned when one spatial type cannot be converted to the other spatial type.
ErrSRIDOnNonGeomCol is thrown when attempting to define SRID over a non-geometry column.
ErrStarUnsupported is called for * expressions seen outside: raw projections, count(*), and arrayagg(*).
ErrStoredProcedureAlreadyExists is returned when a stored procedure does not exist.
ErrStoredProcedureDoesNotExist is returned when a stored procedure does not exist.
ErrStoredProceduresNotSupported is returned when attempting to create a stored procedure on a database that doesn't support them.
ErrSyntaxError is returned when a syntax error in vitess is encountered.
ErrSystemVariableCodeFail is returned when failing to encode/decode a system variable.
ErrSystemVariableGlobalOnly is returned when attempting to set a GLOBAL-only variable using SET SESSION.
ErrSystemVariableReadOnly is returned when attempting to set a value to a non-Dynamic system variable.
No description provided by the author
ErrSystemVariableSessionOnly is returned when attempting to set a SESSION-only variable using SET GLOBAL.
ErrTableAccessDeniedForUser is returned when attempting to access a table that the user does not have permission for, regardless of whether that table actually exists.
ErrTableAlreadyExists is thrown when someone tries to create a table with a name of an existing one.
ErrTableColumnNotFound is thrown when a column named cannot be found in scope.
ErrTableCopyingNotSupported is returned when a table invokes the TableCopierDatabase interface's CopyTableData method without supporting the interface.
ErrTableCreatedNotFound is thrown when a table is created from CREATE TABLE but cannot be found immediately afterward.
ErrTableFunctionNotFound is thrown when a table function is not found.
ErrTableNotFound is returned when the table is not available from the current scope.
ErrTemporaryTableNotSupported is thrown when an integrator attempts to create a temporary tables without temporary table support.
ErrTemporaryTablesForeignKeySupport is returned when a user tries to create a temporary table with a foreign key.
No description provided by the author
ErrTooManyKeyParts is thrown when creating an index with too many columns.
ErrTriggerCannotBeDropped is returned when dropping a trigger would cause another trigger to reference a non-existent trigger.
ErrTriggerCreateStatementInvalid is returned when a TriggerDatabase returns a CREATE TRIGGER statement that is invalid.
ErrTriggerDoesNotExist is returned when a trigger does not exist.
ErrTriggersNotSupported is returned when attempting to create a trigger on a database that doesn't support them.
ErrTriggerTableInUse is returned when trigger execution calls for a table that invoked a trigger being updated by it.
ErrTruncateReferencedFromForeignKey is returned when a table is referenced in a foreign key and TRUNCATE is called on it.
ErrUnableSort is thrown when something happens on sorting.
ErrUnboundPreparedStatementVariable is returned when a query is executed without a binding for one its variables.
ErrUnexpectedNilRow is returned when an invalid operation is applied to an empty row.
ErrUnexpectedRowLength is thrown when the obtained row has more columns than the schema.
ErrUnexpectedSeparator is returned when an invalid separator is used.
ErrUnexpectedType is thrown when a received type is not the expected.
ErrUniqueKeyViolation is returned when a unique key constraint is violated This is meant to wrap a sql.UniqueKey error, which provides the key string.
ErrUnknownColumn is returned when the given column is not found in referenced table.
ErrUnknownConstraint is returned when a DROP CONSTRAINT statement refers to a constraint that doesn't exist.
ErrUnknownConstraintDefinition is returned when an unknown constraint type is used.
ErrUnknownEvent is returned when a query references an event that doesn't exist.
ErrUnknownIndexColumn is returned when a column in an index is not in the table.
ErrUnknownPreparedStatement is returned when an unknown query is executed.
ErrUnknownStatusVariable is returned when a query references a status variable that doesn't exist.
ErrUnknownSystemVariable is returned when a query references a system variable that doesn't exist.
ErrUnknownTable is returned when the non-table name is used for table actions.
ErrUnknownUserVariable is returned when a query references a user variable that doesn't exist.
ErrUnknownWindowName is returned when an over by clause references an unknown window definition.
ErrUnsupportedFeature is thrown when a feature is not already supported.
ErrUnsupportedGISType is thrown when attempting to convert an unsupported geospatial value to a geometry struct.
ErrUnsupportedGISTypeForSpatialFunc is a temporary error because geometry is hard TODO: remove this error when all types are full supported by spatial type functions.
ErrUnsupportedIndexPrefix is returned for an index on a string column with a prefix.
ErrUnsupportedJoinFactorCount is returned for a query with more commutable join tables than we support.
ErrUnsupportedSRID is thrown for spatial functions over unsupported SRIDs.
ErrUnsupportedSyntax is returned when syntax that parses correctly is not supported.
ErrUserAlterFailure is returned when attempting to alter a user and it fails for any reason.
ErrUserCreationFailure is returned when attempting to create a user and it fails for any reason.
ErrUserDeletionFailure is returned when attempting to create a user and it fails for any reason.
ErrUserVariableNoDefault is returned when attempting to set the default value on a user variable.
ErrUuidUnableToParse is returned when a UUID is unable to be parsed.
ErrValueOutOfRange is returned when a value is out of range for a type.
ErrVersionedStoredProceduresNotSupported is returned when attempting to retrieve a versioned stored procedure on a database that doesn't support them.
ErrViewDoesNotExist is returned when a DROP VIEW statement drops a view that does not exist.
ErrViewsNotSupported is returned when attempting to access a view on a database that doesn't support them.
ErrVirtualColumnPrimaryKey is returned when a virtual column is defined as a primary key.
No description provided by the author
ErrWrongAutoKey is returned when a table invokes DropPrimaryKey without first removing the auto increment property (if it exists) on it.
No description provided by the author
ProcessMemory is a reporter for the memory used by the process and the maximum amount of memory allowed controlled by the MAX_MEMORY environment variable.
No description provided by the author
SupportedCharsets contains all non-binary character sets that are currently supported.
No description provided by the author
No description provided by the author
# Structs
Above represents the position immediately above the contained key.
AboveAll represents the position beyond the maximum possible value.
AboveNull represents the position just above NULL, lower than every possible value in the domain.
No description provided by the author
BaseSession is the basic session implementation.
Below represents the position immediately below the contained key.
BelowNull represents the position below NULL, which sorts before |AboveNull| and every non-NULL value in the domain.
CharacterSet represents the character set of a string.
CharacterSetsIterator iterates over every character set available.
CheckConstraint declares a boolean-eval constraint.
CheckDefinition defines a trigger.
Client holds session user information.
Collation represents the collation of a string.
CollationsIterator iterates over every collation available, ordered by their ID (ascending).
No description provided by the author
Column is the definition of a table column.
ColumnDefaultValue is an expression representing the default value of a column.
ColumnExpressionType returns a column expression along with its Type.
ColumnOrder is used in ALTER TABLE statements to change the order of inserted / modified columns.
No description provided by the author
Context of the query execution.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
EmptyProcessList is a no-op implementation of ProcessList suitable for use in tests or other installations that don't require a process list.
Engine represents a sql engine.
EquivSets maintains column equivalency sets created by WHERE a = b filters.
EventDefinition describes a scheduled event.
EventOnScheduleEveryInterval is used to store ON SCHEDULE EVERY clause's interval definition.
ExternalStoredProcedureDetails are the details of an external stored procedure.
ExternalStoredProcedureRegistry manages a collection of ExternalStoredProcedures and encapsulates the logic for looking up external stored procedures based on name and number of arguments.
FastIntSet keeps track of a set of integers.
ForeignKeyConstraint declares a constraint between the columns of two tables.
FuncDepSet encodes functional dependencies for a relational expression.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
IgnorableError is used propagate information about an error that needs to be ignored and does not interfere with any update accumulators.
IndexBuilder builds ranges based on the combination of calls made for the given index, and then relies on the Index to return an IndexLookup from the created ranges.
IndexColumn is the column by which to add to an index.
No description provided by the author
IndexLookup is the implementation-specific definition of an index lookup.
IndexRegistry keeps track of all driver-provided indexes in the engine.
Key maintains a strict or lax dependency.
LockSubsystem manages reentrant named locks.
No description provided by the author
MemoryManager is in charge of keeping track and managing all the components that operate in memory.
MysqlConnectionUser is stored in mysql's connection as UserData once a connection has been authenticated.
MysqlScope represents the scope of a MySQL system variable.
MySQLStatusVariable represents a mysql status variable.
MysqlSystemVariable represents a mysql system variable.
PartitionProgress keeps track of a partition progress.
PrimaryKeySchema defines table metadata for columns and primary key ordering.
PrivilegeCheckSubject is a struct that contains the entity information for an access check.
PrivilegedOperation represents an operation that requires privileges to execute.
Process represents a process in the SQL server.
Progress between done items and total items.
RangeColumnExpr represents the contiguous set of values on a specific column.
RangeColumnExprTree represents a red-black tree over a range column expression.
No description provided by the author
Services are handles to optional or plugin functionality that can be used by the SQL implementation in certain situations.
SortField is a field by which a query will be sorted.
SpatialIndexBuilder is like the IndexBuilder, but spatial.
SqlMode encodes the SQL mode string and provides methods for querying the enabled modes.
StatQualifier is the namespace hierarchy for a given statistic.
StatusVarValue is a StatusVariable with a value.
StoredProcedureDetails are the details of the stored procedure.
No description provided by the author
TableProgress keeps track of a table progress, and for each of its partitions.
TableRowIter is an iterator over the partitions in a table.
TreePrinter is a printer for tree nodes.
TriggerDefinition defines a trigger.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Value is a logical index into a Row2.
View is the parsed version of ViewDefinition Not meant to be used externally.
ViewDefinition is the named textual definition of a view.
ViewKey is the key used to store view definitions.
ViewRegistry stores session-local views for databases that don't implement view storage.
No description provided by the author
A WindowDefinition specifies the window parameters of a window function.
WindowInterval is a WindowBuffer index range, where [Start] is inclusive, and [End] is exclusive.
No description provided by the author
No description provided by the author
# Interfaces
Aggregation implements an aggregation expression, where an aggregation buffer is created for each grouping (NewBuffer).
No description provided by the author
AliasedDatabase is a database that has an alias: a name that is different from the name to be used system tables such as information_schema, or the mysql grant tables.
AlterableTable should be implemented by tables that can receive ALTER TABLE statements to modify their schemas.
AutoIncrementSetter provides support for altering a table's AUTO_INCREMENT sequence, eg 'ALTER TABLE t AUTO_INCREMENT = 10;'.
AutoIncrementTable is a table that supports AUTO_INCREMENT.
BinaryNode is a Node with two children.
No description provided by the author
CatalogTable is a Table that depends on a Catalog.
CatalogTableFunction is a table function that can be used as a table factor in many SQL queries.
CheckAlterableTable represents a table that supports check constraints.
No description provided by the author
Checksumable provides the checksum of some data.
CheckTable is a table that declares check constraints.
Closer is a node that can be closed.
CollatedDatabase is a Database that can store and update its collation.
CollatedDatabaseProvider is a DatabaseProvider that can create a Database with a specific collation.
CollationAlterableTable represents a table that supports the alteration of its collation.
CollationCoercible represents the coercibility of an expression or node.
CommentedNode allows comments to be set and retrieved on it.
CommentedTable is a table that has a comment on it.
Database represents the database.
Databaseable is a node with a string reference to a database.
DatabaseProvider is the fundamental interface to integrate with the engine.
Databaser is a node that contains a reference to a database.
DatetimeType represents DATE, DATETIME, and TIMESTAMP.
DebugStringer is shared by implementors of Node and Expression, and is used for debugging the analyzer.
DecimalType represents the DECIMAL type.
DeferredType is a placeholder for prepared statements that is replaced by the BindVar type on re-analysis.
DeletableTable is a table that can delete rows.
No description provided by the author
Disposable objects can erase all their content when they're no longer in use.
DriverIndex is an index managed by a driver, as opposed to natively by a DB table.
DriverIndexableTable represents a table that supports being indexed and receiving indexes to be able to speed up its execution.
DriverIndexLookup is a subset of an index.
DynamicColumnsTable is a table with a schema that is variable depending on the tables in the database (information_schema.columns).
EditOpenerCloser is the base interface for table editors, and deals with statement boundaries.
EnumType represents the ENUM type.
EventDatabase is a database that supports the creation and execution of events.
EventScheduler is an interface used for notifying the EventSchedulerStatus for querying any events related statements.
EventSchedulerStatement represents a SQL statement that requires a EventScheduler (e.g.
ExecSourceRel is a node that has no children and is directly row generating.
Expression is a combination of one or more SQL expressions.
Expression2 is an experimental future interface alternative to Expression to provide faster access.
Expressioner is a node that contains expressions.
ExpressionWithNodes is an expression that contains nodes as children.
ExtendedIndex is an extension of Index, that allows access to appended primary keys.
ExternalStoredProcedureProvider provides access to built-in stored procedures.
FilteredIndex is an extension of |Index| that allows an index to declare certain filter predicates handled, allowing them to be removed from the overall plan for greater execution efficiency.
FilteredTable is a table that can filter its result rows from RowIter using filter expressions that would otherwise be applied by a separate Filter node.
ForeignKeyEditor is a TableEditor that is addressable via IndexLookup.
ForeignKeyTable is a table that declares foreign key constraints, and can be referenced by other tables' foreign key constraints.
Freeable objects can free their memory.
Function is a function defined by the user that can be applied in a SQL query.
FunctionExpression is an Expression that represents a function.
FunctionProvider is an interface that allows custom functions to be provided.
HistogramBucket contains statistics for a fragment of an index's keyspace.
No description provided by the author
Index is the representation of an index, and also creates an IndexLookup when given a collection of ranges.
IndexAddressable is a table that can be scanned through a primary index.
IndexAddressableTable is a table that can be accessed through an index.
IndexAlterableTable represents a table that supports index modification operations.
IndexBuildingTable is an optional extension to IndexAlterableTable that supports the engine's assistance in building a newly created index, or rebuilding an existing one.
IndexDriver manages the coordination between the indexes and their representation on disk.
IndexedTable is a table with an index chosen for range scans.
IndexedTableCreator is a Database that can create new tables which have a Primary Key with columns that have prefix lengths.
IndexKeyValueIter is an iterator of index key values, that is, a tuple of the values that will be index keys.
IndexRequired tables cannot be executed without index lookups on certain columns.
IndexSearchable lets a node use custom logic to create *plan.IndexedTableAccess.
IndexSearchableTable is a Table supports custom index generation.
IndexValueIter is an iterator of index values.
InsertableTable is a table that can process insertion of new rows.
JSONWrapper is an integrator specific implementation of a JSON field value.
KeyValueCache is a cache of key value pairs.
Lockable should be implemented by tables that can be locked and unlocked.
MultiDatabaser is a node that contains a reference to a database provider.
MutableDatabaseProvider is a DatabaseProvider that can create and drop databases.
No description provided by the author
MutableTableNode is a TableNode that can update its underlying table.
MutableTableWrapper is a TableWrapper that can change its underlying table.
Nameable is something that has a name.
No description provided by the author
Node is a node in the execution plan tree.
NodeExecBuilder converts a sql.Node tree into a RowIter.
NodeVisitor visits expressions in an expression tree.
NonDeterministicExpression allows a way for expressions to declare that they are non-deterministic, which will signal the engine to not cache their results when this would otherwise appear to be safe.
NullType represents the type of NULL values.
NumberType represents all integer and floating point types.
OpaqueNode is a node that doesn't allow transformations to its children and acts as a black box.
OrderedIndex is an extension of |Index| that allows indexes to declare their return order.
Partition represents a partition from a SQL table.
PartitionCounter can return the number of partitions.
PartitionIndexKeyValueIter is an iterator of partitions that will return the partition and the IndexKeyValueIter of that partition.
PartitionIter is an iterator that retrieves partitions.
PersistableSession supports serializing/deserializing global system variables/.
PrimaryKeyAlterableTable represents a table that supports primary key changes.
PrimaryKeySchemaTarget is a node that has a primary key target schema that can be set.
PrimaryKeyTable is a table with a primary key.
PrivilegedOperationChecker contains the necessary data to check whether the operation should succeed based on the privileges contained by the user.
PrivilegeSet is a set containing privileges.
PrivilegeSetColumn is a set containing column privileges.
PrivilegeSetDatabase is a set containing database-level privileges.
PrivilegeSetRoutine is a set containing routine privileges.
PrivilegeSetTable is a set containing table-level privileges.
No description provided by the author
ProjectedTable is a table that can return only a subset of its columns from RowIter.
Projector is a node that projects expressions for parent nodes to consume (i.e.
RangeCut represents a position on the line of all possible values.
ReadOnlyDatabase is an extension of Database that may declare itself read-only, which will disallow any DDL or DML statements from executing.
ReferenceChecker is usually an IndexAddressableTable that does key lookups for existence checks.
RenameableNode is a Node that can be renamed.
ReplaceableTable allows rows to be replaced through a Delete (if applicable) then Insert.
Reporter is a component that gives information about the memory usage.
Resolvable is something that can be resolved or not.
RewritableTable is an extension to Table that makes it simpler for integrators to adapt to schema changes that must rewrite every row of the table.
RowDeleter is a delete cursor that can delete one or more rows from a table.
RowInserter is an insert cursor that can insert one or more values to a table.
RowIter is an iterator that produces rows.
RowReplacer is a combination of RowDeleter and RowInserter.
Rows2Cache is a cache of Row2s.
RowsCache is a cache of rows.
RowUpdater is an update cursor that can update one or more rows in a table.
SchemaTarget is a node that has a target schema that can be set during analysis.
SchemaValidator is a database that performs schema compatibility checks for CREATE and ALTER TABLE statements.
Session holds the session data.
SessionUserVariables is a simple dictionary to set and retrieve user variables within a session.
SetType represents the SET type.
SpatialColumnType is a node that contains a reference to all spatial types.
Statistic is the top-level interface for accessing cardinality and costing estimates for an index prefix.
StatisticsTable is a table that can provide information about its number of rows and other facts to improve query planning performance.
StatsProvider is a catalog extension for databases that can build and provide index statistics.
No description provided by the author
StatusVariableRegistry is a registry of status variables.
StoredProcedureDatabase is a database that supports the creation and execution of stored procedures.
StringType represents all string types, including VARCHAR and BLOB.
SystemVariable is used to system variables.
SystemVariableRegistry is a registry of system variables.
SystemVariableScope represents the scope of a system variable and handles SV values depending on its scope.
SystemVariableType represents a SQL type specifically (and only) used in system variables.
Table is a SQL table.
Tableable is something that has a table.
TableCopierDatabase is a database that can copy a source table's data (without preserving indexed, fks, etc.) into another destination table.
TableCreator is a Database that can create new tables.
TableDropper is a Datagbase that can drop tables.
TableEditor is the combination of interfaces that allow any table edit operation: i.e.
TableFunction is a node that is generated by a function and can be used as a table factor in many SQL queries.
TableFunctionProvider is an interface that allows custom table functions to be provided.
TableNode is an interface for nodes that are also tables.
TableRenamer is a database that can rename tables.
TableWrapper is a node that wraps the real table.
TemporaryTable allows tables to declare that they are temporary (created by CREATE TEMPORARY TABLE).
TemporaryTableCreator is a database that can create temporary tables that persist only as long as the session.
TemporaryTableDatabase is a database that can query the session (which manages the temporary table state) to retrieve the name of all temporary tables.
Transaction is an opaque type implemented by an integrator to record necessary information at the start of a transaction.
TransactionSession can BEGIN, ROLLBACK and COMMIT transactions, as well as create SAVEPOINTS and restore to them.
TriggerDatabase is a Database that supports creating and storing triggers.
TruncateableTable is a table that can process the deletion of all rows either via a TRUNCATE TABLE statement or a DELETE statement without a WHERE clause.
Type represents a SQL type.
No description provided by the author
TypeWithCollation is implemented on all types that may return a collation.
UnaryNode is a Node with one child.
UnresolvedTable is a Table that is either unresolved or deferred for until an asOf resolution.
UnsupportedFunctionStub is a marker interface for function stubs that are unsupported.
UpdatableTable is a table that can process updates of existing rows via update statements.
VersionedDatabase is a Database that can return tables as they existed at different points in time.
ViewDatabase is implemented by databases that persist view definitions.
Visitor visits expressions in an expression tree.
WindowAdaptableExpression is an Expression that can be executed as a window aggregation.
WindowAggregation implements a window aggregation expression.
WindowFrame describe input bounds for an aggregation function execution.
WindowFramer is responsible for tracking window frame indices for partition rows.
WindowFunction performs aggregations on buffer intervals, optionally maintaining internal state for performance optimizations.
No description provided by the author
YearType represents the YEAR type.
# Type aliases
No description provided by the author
CharacterSetID represents a character set.
No description provided by the author
CollationID represents the collation's unique identifier.
CollationSorter is a collation's sort function.
No description provided by the author
ContextOption is a function to configure the context.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
DisposeFunc is a function to completely erase a cache and remove it from the manager.
EventStatus represents an event status that is defined for an event.
No description provided by the author
ForeignKeyReferentialAction is the behavior for this foreign key with the relevant action is performed on the foreign table.
No description provided by the author
Histogram is a collection of non-overlapping buckets that estimate the costing statistics for an index prefix.
No description provided by the author
IndexConstraint represents any constraints that should be applied to the index.
No description provided by the author
No description provided by the author
IndexStatus represents the current status in which the index is.
IndexUsing is the desired storage type.
LockState represents the different states a lock can be in.
MysqlSVScopeType represents the scope of a system variable.
NullOrdering represents how to order based on null values.
PrivilegeType represents a privilege.
No description provided by the author
Range is a collection of RangeColumns that are ordered by the column expressions as returned by their parent index.
RangeBoundType is the bound of the RangeCut.
RangeCollection is a collection of ranges that represent different (non-overlapping) filter expressions.
RangeType returns what a RangeColumnExpr represents, such as a GreaterThan on some column, or a column set between two bounds.
Row is a tuple of values.
Row2 is a slice of values.
Schema is the definition of a table.
No description provided by the author
SortOrder represents the order of the sort (ascending or descending).
StatusVariableScope represents the scope of a status variable.
TableId is the unique identifier of a table or table alias in a multi-db environment.
No description provided by the author
UnresolvedDatabase is a database which has not been resolved yet.
No description provided by the author
WindowBuffer is a type alias for a window materialization.