Documentation ¶
Index ¶
- Constants
- Variables
- func ConnectIdentifiersANSI(identifiers ...string) string
- func DecodeCreateindex(createIndexSQL string) ([]string, error)
- func DecodeIndexName(encodedName string) (string, string)
- func EncodeIndexName(table, index string) string
- func FullColumnName(catalog, schema, table, column string) string
- func FullIndexName(catalog, schema, index string) string
- func FullSchemaName(catalog, schema string) string
- func FullTableName(catalog, schema, table string) string
- func IsDuckDBCatalogError(err error) bool
- func IsDuckDBIndexAlreadyExistsError(err error) bool
- func IsDuckDBNotNullConstraintViolationError(err error) (bool, string)
- func IsDuckDBSetSchemaNotFoundError(err error) bool
- func IsDuckDBTableAlreadyExistsError(err error) bool
- func IsDuckDBTableNotFoundError(err error) bool
- func IsDuckDBUniqueConstraintViolationError(err error) bool
- func IsDuckDBViewNotFoundError(err error) bool
- func IsSystemView(viewName string) bool
- func QuoteIdentifierANSI(identifier string) string
- type AnnotatedDuckType
- type ColumnInfo
- type Comment
- type Database
- func (d *Database) AllViews(ctx *sql.Context) ([]sql.ViewDefinition, error)
- func (d *Database) CreateTable(ctx *sql.Context, name string, schema sql.PrimaryKeySchema, ...) error
- func (d *Database) CreateTemporaryTable(ctx *sql.Context, name string, schema sql.PrimaryKeySchema, ...) error
- func (d *Database) CreateTrigger(ctx *sql.Context, definition sql.TriggerDefinition) error
- func (d *Database) CreateView(ctx *sql.Context, name string, selectStatement string, createViewStmt string) error
- func (d *Database) DropTable(ctx *sql.Context, name string) error
- func (d *Database) DropTrigger(ctx *sql.Context, name string) error
- func (d *Database) DropView(ctx *sql.Context, name string) error
- func (d *Database) GetCollation(ctx *sql.Context) sql.CollationID
- func (d *Database) GetTableInsensitive(ctx *sql.Context, tblName string) (sql.Table, bool, error)
- func (d *Database) GetTableNames(ctx *sql.Context) ([]string, error)
- func (d *Database) GetTriggers(ctx *sql.Context) ([]sql.TriggerDefinition, error)
- func (d *Database) GetViewDefinition(ctx *sql.Context, viewName string) (sql.ViewDefinition, bool, error)
- func (d *Database) Name() string
- func (d *Database) RenameTable(ctx *sql.Context, oldName string, newName string) error
- func (d *Database) SetCollation(ctx *sql.Context, collation sql.CollationID) error
- type DatabaseProvider
- func (prov *DatabaseProvider) AllDatabases(ctx *sql.Context) []sql.Database
- func (prov *DatabaseProvider) CatalogName() string
- func (prov *DatabaseProvider) Close() error
- func (prov *DatabaseProvider) Connector() *duckdb.Connector
- func (prov *DatabaseProvider) CreateDatabase(ctx *sql.Context, name string) error
- func (prov *DatabaseProvider) DataDir() string
- func (prov *DatabaseProvider) Database(ctx *sql.Context, name string) (sql.Database, error)
- func (prov *DatabaseProvider) DbFile() string
- func (prov *DatabaseProvider) DropDatabase(ctx *sql.Context, name string) error
- func (prov *DatabaseProvider) ExternalStoredProcedure(ctx *sql.Context, name string, numOfParams int) (*sql.ExternalStoredProcedureDetails, error)
- func (prov *DatabaseProvider) ExternalStoredProcedures(ctx *sql.Context, name string) ([]sql.ExternalStoredProcedureDetails, error)
- func (prov *DatabaseProvider) HasDatabase(ctx *sql.Context, name string) bool
- func (prov *DatabaseProvider) Restart(readOnly bool) error
- func (prov *DatabaseProvider) Storage() *stdsql.DB
- type EmptyTableEditor
- func (e *EmptyTableEditor) Close(*sql.Context) error
- func (e *EmptyTableEditor) DiscardChanges(ctx *sql.Context, errorEncountered error) error
- func (e *EmptyTableEditor) StatementBegin(ctx *sql.Context)
- func (e *EmptyTableEditor) StatementComplete(ctx *sql.Context) error
- func (e *EmptyTableEditor) Update(ctx *sql.Context, old sql.Row, new sql.Row) error
- type ExtraTableInfo
- type Index
- func (idx *Index) CanSupport(ranges ...sql.Range) bool
- func (idx *Index) CanSupportOrderBy(expr sql.Expression) bool
- func (idx *Index) ColumnExpressionTypes() []sql.ColumnExpressionType
- func (idx *Index) Comment() string
- func (idx *Index) Database() string
- func (idx *Index) Expressions() []string
- func (idx *Index) ID() string
- func (idx *Index) IndexType() string
- func (idx *Index) IsFullText() bool
- func (idx *Index) IsGenerated() bool
- func (idx *Index) IsSpatial() bool
- func (idx *Index) IsUnique() bool
- func (idx *Index) IsVector() bool
- func (idx *Index) PrefixLengths() []uint16
- func (idx *Index) Table() string
- type IndexedTable
- type InternalSchema
- type InternalTable
- func (it *InternalTable) CountAllStmt() string
- func (it *InternalTable) DeleteAllStmt() string
- func (it *InternalTable) DeleteStmt() string
- func (it *InternalTable) QualifiedName() string
- func (it *InternalTable) SelectAllStmt() string
- func (it *InternalTable) SelectColumnsStmt(valueColumns []string) string
- func (it *InternalTable) SelectStmt() string
- func (it *InternalTable) UpdateAllStmt(valueColumns []string) string
- func (it *InternalTable) UpdateStmt(keyColumns []string, valueColumns []string) string
- func (it *InternalTable) UpsertStmt() string
- type MySQLType
- type Table
- func (t *Table) AddColumn(ctx *sql.Context, column *sql.Column, order *sql.ColumnOrder) error
- func (t *Table) AutoIncrementSetter(ctx *sql.Context) sql.AutoIncrementSetter
- func (t *Table) Collation() sql.CollationID
- func (t *Table) Comment() string
- func (t *Table) CreateIndex(ctx *sql.Context, indexDef sql.IndexDef) error
- func (t *Table) Deleter(*sql.Context) sql.RowDeleter
- func (t *Table) DropColumn(ctx *sql.Context, columnName string) error
- func (t *Table) DropIndex(ctx *sql.Context, indexName string) error
- func (t *Table) ExtraTableInfo() ExtraTableInfo
- func (t *Table) GetIndexes(ctx *sql.Context) ([]sql.Index, error)
- func (t *Table) GetNextAutoIncrementValue(ctx *sql.Context, insertVal interface{}) (uint64, error)
- func (t *Table) IndexedAccess(lookup sql.IndexLookup) sql.IndexedTable
- func (t *Table) Inserter(*sql.Context) sql.RowInserter
- func (t *Table) ModifyColumn(ctx *sql.Context, columnName string, column *sql.Column, ...) error
- func (t *Table) Name() string
- func (t *Table) PartitionRows(ctx *sql.Context, _ sql.Partition) (sql.RowIter, error)
- func (t *Table) Partitions(ctx *sql.Context) (sql.PartitionIter, error)
- func (t *Table) PeekNextAutoIncrementValue(ctx *sql.Context) (uint64, error)
- func (t *Table) PreciseMatch() bool
- func (t *Table) PrimaryKeySchema() sql.PrimaryKeySchema
- func (t *Table) RenameIndex(ctx *sql.Context, fromIndexName string, toIndexName string) error
- func (t *Table) Replacer(*sql.Context) sql.RowReplacer
- func (t *Table) Schema() sql.Schema
- func (t *Table) String() string
- func (t *Table) Truncate(ctx *sql.Context) (int, error)
- func (t *Table) Updater(ctx *sql.Context) sql.RowUpdater
Constants ¶
const ( // ManagedCommentPrefix is the prefix for comments that are managed by the catalog. ManagedCommentPrefix = "base64:" // SequenceNamePrefix is the prefix for sequence names that are managed by the catalog. SequenceNamePrefix = "__sys_table_seq_" )
const DuckDBDecimalTypeMaxPrecision = 38
Variables ¶
var ( ErrDuckDB = errors.NewKind("duckdb: %v") ErrTranspiler = errors.NewKind("transpiler: %v") )
var InternalSchemas = struct { SYS InternalSchema MySQL InternalSchema }{ SYS: InternalSchema{ Schema: "__sys__", }, MySQL: InternalSchema{ Schema: "mysql", }, }
var InternalTables = struct { PersistentVariable InternalTable BinlogPosition InternalTable PgSubscription InternalTable GlobalStatus InternalTable // TODO(sean): This is a temporary work around for clients that query the 'pg_catalog.pg_stat_replication'. // Once we add 'pg_catalog' and support views for PG, replace this by a view. // https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-REPLICATION-VIEW PGStatReplication InternalTable PGRange InternalTable }{ PersistentVariable: InternalTable{ Schema: "__sys__", Name: "persistent_variable", KeyColumns: []string{"name"}, ValueColumns: []string{"value", "vtype"}, DDL: "name TEXT PRIMARY KEY, value TEXT, vtype TEXT", }, BinlogPosition: InternalTable{ Schema: "__sys__", Name: "binlog_position", KeyColumns: []string{"channel"}, ValueColumns: []string{"position"}, DDL: "channel TEXT PRIMARY KEY, position TEXT", }, PgSubscription: InternalTable{ Schema: "__sys__", Name: "pg_subscription", KeyColumns: []string{"subname"}, ValueColumns: []string{"subconninfo", "subpublication", "subskiplsn", "subenabled"}, DDL: "subname TEXT PRIMARY KEY, subconninfo TEXT, subpublication TEXT, subskiplsn TEXT, subenabled BOOLEAN", }, GlobalStatus: InternalTable{ Schema: "performance_schema", Name: "global_status", KeyColumns: []string{"VARIABLE_NAME"}, ValueColumns: []string{"VARIABLE_VALUE"}, DDL: "VARIABLE_NAME TEXT PRIMARY KEY, VARIABLE_VALUE TEXT", InitialData: [][]any{ {"Innodb_redo_log_enabled", "OFF"}, }, }, PGStatReplication: InternalTable{ Schema: "__sys__", Name: "pg_stat_replication", KeyColumns: []string{ "pid", }, ValueColumns: []string{ "usesysid", "usename", "application_name", "client_addr", "client_hostname", "client_port", "backend_start", "backend_xmin", "state", "sent_lsn", "write_lsn", "flush_lsn", "replay_lsn", "write_lag", "flush_lag", "replay_lag", "sync_priority", "sync_state", "reply_time", }, DDL: "pid INTEGER PRIMARY KEY, usesysid TEXT, usename TEXT, application_name TEXT, client_addr TEXT, client_hostname TEXT, client_port INTEGER, backend_start TIMESTAMP, backend_xmin INTEGER, state TEXT, sent_lsn TEXT, write_lsn TEXT, flush_lsn TEXT, replay_lsn TEXT, write_lag INTERVAL, flush_lag INTERVAL, replay_lag INTERVAL, sync_priority INTEGER, sync_state TEXT, reply_time TIMESTAMP", }, PGRange: InternalTable{ Schema: "__sys__", Name: "pg_range", KeyColumns: []string{"rngtypid"}, ValueColumns: []string{"rngsubtype", "rngmultitypid", "rngcollation", "rngsubopc", "rngcanonical", "rngsubdiff"}, DDL: "rngtypid TEXT PRIMARY KEY, rngsubtype TEXT, rngmultitypid TEXT, rngcollation TEXT, rngsubopc TEXT, rngcanonical TEXT, rngsubdiff TEXT", InitialData: [][]any{ {"3904", "23", "4451", "0", "1978", "int4range_canonical", "int4range_subdiff"}, {"3906", "1700", "4532", "0", "3125", "-", "numrange_subdiff"}, {"3908", "1114", "4533", "0", "3128", "-", "tsrange_subdiff"}, {"3910", "1184", "4534", "0", "3127", "-", "tstzrange_subdiff"}, {"3912", "1082", "4535", "0", "3122", "daterange_canonical", "daterange_subdiff"}, {"3926", "20", "4536", "0", "3124", "int8range_canonical", "int8range_subdiff"}, }, }, }
var SystemViews = map[string]struct{}{
"duckdb_columns": {},
"duckdb_constraints": {},
"duckdb_databases": {},
"duckdb_indexes": {},
"duckdb_schemas": {},
"duckdb_tables": {},
"duckdb_types": {},
"duckdb_views": {},
"pragma_database_list": {},
"sqlite_master": {},
"sqlite_schema": {},
"sqlite_temp_master": {},
"sqlite_temp_schema": {},
}
Functions ¶
func ConnectIdentifiersANSI ¶
func DecodeCreateindex ¶
func DecodeIndexName ¶
func EncodeIndexName ¶
EncodeIndexName uses a simple encoding scheme (table$$index) for better visibility which is useful for debugging.
func FullColumnName ¶
func FullIndexName ¶
func FullSchemaName ¶
func FullTableName ¶
func IsDuckDBCatalogError ¶
func IsDuckDBIndexAlreadyExistsError ¶
ERROR 1105 (HY000): duckdb: Catalog Error: Index with name "x_idx" already exists!
func IsDuckDBNotNullConstraintViolationError ¶
Constraint Error: NOT NULL constraint failed: <column>
func IsDuckDBSetSchemaNotFoundError ¶
ERROR 1105 (HY000): unknown error: Catalog Error: SET schema: No catalog + schema named "mysql.db0" found.
func IsDuckDBUniqueConstraintViolationError ¶
ERROR 1105 (HY000): duckdb: Constraint Error: Data contains duplicates on indexed column(s)
func IsSystemView ¶
func QuoteIdentifierANSI ¶
Types ¶
type AnnotatedDuckType ¶
type AnnotatedDuckType struct {
// contains filtered or unexported fields
}
func DuckdbDataType ¶
func DuckdbDataType(mysqlType sql.Type) (AnnotatedDuckType, error)
func (AnnotatedDuckType) MySQL ¶
func (t AnnotatedDuckType) MySQL() MySQLType
func (AnnotatedDuckType) Name ¶
func (t AnnotatedDuckType) Name() string
type ColumnInfo ¶
type ColumnInfo struct { ColumnName string ColumnIndex int DataType sql.Type IsNullable bool ColumnDefault stdsql.NullString Comment stdsql.NullString }
type Comment ¶
type Comment[T any] struct { Text string `json:"text,omitempty"` Meta T `json:"meta,omitempty"` // extra information, e.g. the original MySQL column type, etc. }
func DecodeComment ¶
func NewComment ¶
func NewCommentWithMeta ¶
type Database ¶
type Database struct {
// contains filtered or unexported fields
}
func NewDatabase ¶
func (*Database) CreateTable ¶
func (d *Database) CreateTable(ctx *sql.Context, name string, schema sql.PrimaryKeySchema, collation sql.CollationID, comment string) error
CreateTable implements sql.TableCreator.
func (*Database) CreateTemporaryTable ¶
func (d *Database) CreateTemporaryTable(ctx *sql.Context, name string, schema sql.PrimaryKeySchema, collation sql.CollationID) error
CreateTemporaryTable implements sql.CreateTemporaryTable.
func (*Database) CreateTrigger ¶
CreateTrigger implements sql.TriggerDatabase.
func (*Database) CreateView ¶
func (d *Database) CreateView(ctx *sql.Context, name string, selectStatement string, createViewStmt string) error
CreateView implements sql.ViewDatabase.
func (*Database) DropTrigger ¶
DropTrigger implements sql.TriggerDatabase.
func (*Database) GetCollation ¶
func (d *Database) GetCollation(ctx *sql.Context) sql.CollationID
GetCollation implements sql.CollatedDatabase.
func (*Database) GetTableInsensitive ¶
GetTableInsensitive implements sql.Database.
func (*Database) GetTableNames ¶
GetTableNames implements sql.Database.
func (*Database) GetTriggers ¶
GetTriggers implements sql.TriggerDatabase.
func (*Database) GetViewDefinition ¶
func (d *Database) GetViewDefinition(ctx *sql.Context, viewName string) (sql.ViewDefinition, bool, error)
GetViewDefinition implements sql.ViewDatabase.
func (*Database) RenameTable ¶
RenameTable implements sql.TableRenamer.
func (*Database) SetCollation ¶
SetCollation implements sql.CollatedDatabase.
type DatabaseProvider ¶
type DatabaseProvider struct {
// contains filtered or unexported fields
}
func NewDBProvider ¶
func NewDBProvider(dataDir, dbFile string) (*DatabaseProvider, error)
func NewInMemoryDBProvider ¶
func NewInMemoryDBProvider() *DatabaseProvider
func (*DatabaseProvider) AllDatabases ¶
func (prov *DatabaseProvider) AllDatabases(ctx *sql.Context) []sql.Database
AllDatabases implements sql.DatabaseProvider.
func (*DatabaseProvider) CatalogName ¶
func (prov *DatabaseProvider) CatalogName() string
func (*DatabaseProvider) Close ¶
func (prov *DatabaseProvider) Close() error
func (*DatabaseProvider) Connector ¶
func (prov *DatabaseProvider) Connector() *duckdb.Connector
func (*DatabaseProvider) CreateDatabase ¶
func (prov *DatabaseProvider) CreateDatabase(ctx *sql.Context, name string) error
CreateDatabase implements sql.MutableDatabaseProvider.
func (*DatabaseProvider) DataDir ¶
func (prov *DatabaseProvider) DataDir() string
func (*DatabaseProvider) DbFile ¶
func (prov *DatabaseProvider) DbFile() string
func (*DatabaseProvider) DropDatabase ¶
func (prov *DatabaseProvider) DropDatabase(ctx *sql.Context, name string) error
DropDatabase implements sql.MutableDatabaseProvider.
func (*DatabaseProvider) ExternalStoredProcedure ¶
func (prov *DatabaseProvider) ExternalStoredProcedure(ctx *sql.Context, name string, numOfParams int) (*sql.ExternalStoredProcedureDetails, error)
ExternalStoredProcedure implements sql.ExternalStoredProcedureProvider.
func (*DatabaseProvider) ExternalStoredProcedures ¶
func (prov *DatabaseProvider) ExternalStoredProcedures(ctx *sql.Context, name string) ([]sql.ExternalStoredProcedureDetails, error)
ExternalStoredProcedures implements sql.ExternalStoredProcedureProvider.
func (*DatabaseProvider) HasDatabase ¶
func (prov *DatabaseProvider) HasDatabase(ctx *sql.Context, name string) bool
HasDatabase implements sql.DatabaseProvider.
func (*DatabaseProvider) Restart ¶
func (prov *DatabaseProvider) Restart(readOnly bool) error
func (*DatabaseProvider) Storage ¶
func (prov *DatabaseProvider) Storage() *stdsql.DB
type EmptyTableEditor ¶
type EmptyTableEditor struct { }
func (*EmptyTableEditor) Close ¶
func (e *EmptyTableEditor) Close(*sql.Context) error
Close implements sql.RowUpdater.
func (*EmptyTableEditor) DiscardChanges ¶
func (e *EmptyTableEditor) DiscardChanges(ctx *sql.Context, errorEncountered error) error
DiscardChanges implements sql.RowUpdater.
func (*EmptyTableEditor) StatementBegin ¶
func (e *EmptyTableEditor) StatementBegin(ctx *sql.Context)
StatementBegin implements sql.RowUpdater.
func (*EmptyTableEditor) StatementComplete ¶
func (e *EmptyTableEditor) StatementComplete(ctx *sql.Context) error
StatementComplete implements sql.RowUpdater.
type ExtraTableInfo ¶
type Index ¶
type Index struct { DbName string TableName string Exprs []sql.Expression Name string Unique bool CommentObj *Comment[any] PrefixLens []uint16 }
func (*Index) CanSupport ¶
CanSupport returns whether this index supports lookups on the given range filters.
func (*Index) CanSupportOrderBy ¶
func (idx *Index) CanSupportOrderBy(expr sql.Expression) bool
CanSupportOrderBy returns whether this index can optimize ORDER BY a given expression type. Verifying that the expression's children match the index columns are done separately.
func (*Index) ColumnExpressionTypes ¶
func (idx *Index) ColumnExpressionTypes() []sql.ColumnExpressionType
ColumnExpressionTypes returns each expression and its associated Type. Each expression string should exactly match the string returned from Index.Expressions(). ColumnExpressionTypes implements the interface sql.Index.
func (*Index) Expressions ¶
Expressions returns the indexed expressions. If the result is more than one expression, it means the index has multiple columns indexed. If it's just one, it means it may be an expression or a column.
func (*Index) IsFullText ¶
IsFullText returns whether this index is a Full-Text index
func (*Index) IsGenerated ¶
IsGenerated returns whether this index was generated. Generated indexes are used for index access, but are not displayed (such as with SHOW INDEXES).
func (*Index) PrefixLengths ¶
PrefixLengths returns the prefix lengths for each column in this index
type IndexedTable ¶
type IndexedTable struct { *Table Lookup sql.IndexLookup }
func (*IndexedTable) LookupPartitions ¶
func (t *IndexedTable) LookupPartitions(ctx *sql.Context, lookup sql.IndexLookup) (sql.PartitionIter, error)
type InternalSchema ¶
type InternalSchema struct {
Schema string
}
type InternalTable ¶
type InternalTable struct { Schema string Name string KeyColumns []string ValueColumns []string DDL string InitialData [][]any }
func GetInternalTables ¶
func GetInternalTables() []InternalTable
func (*InternalTable) CountAllStmt ¶
func (it *InternalTable) CountAllStmt() string
func (*InternalTable) DeleteAllStmt ¶
func (it *InternalTable) DeleteAllStmt() string
func (*InternalTable) DeleteStmt ¶
func (it *InternalTable) DeleteStmt() string
func (*InternalTable) QualifiedName ¶
func (it *InternalTable) QualifiedName() string
func (*InternalTable) SelectAllStmt ¶
func (it *InternalTable) SelectAllStmt() string
func (*InternalTable) SelectColumnsStmt ¶
func (it *InternalTable) SelectColumnsStmt(valueColumns []string) string
func (*InternalTable) SelectStmt ¶
func (it *InternalTable) SelectStmt() string
func (*InternalTable) UpdateAllStmt ¶
func (it *InternalTable) UpdateAllStmt(valueColumns []string) string
func (*InternalTable) UpdateStmt ¶
func (it *InternalTable) UpdateStmt(keyColumns []string, valueColumns []string) string
func (*InternalTable) UpsertStmt ¶
func (it *InternalTable) UpsertStmt() string
type MySQLType ¶
type MySQLType struct { Name string Length uint32 `json:",omitempty"` Precision uint8 `json:",omitempty"` Scale uint8 `json:",omitempty"` Unsigned bool `json:",omitempty"` Display uint8 `json:",omitempty"` // Display width for integer types Collation uint16 `json:",omitempty"` // For string types Values []string `json:",omitempty"` // For ENUM and SET Default string `json:",omitempty"` // Default value of column AutoIncrement bool `json:",omitempty"` // Auto increment flag }
type Table ¶
type Table struct {
// contains filtered or unexported fields
}
func (*Table) AutoIncrementSetter ¶
func (t *Table) AutoIncrementSetter(ctx *sql.Context) sql.AutoIncrementSetter
AutoIncrementSetter implements sql.AutoIncrementTable.
func (*Table) Collation ¶
func (t *Table) Collation() sql.CollationID
Collation implements sql.Table.
func (*Table) CreateIndex ¶
CreateIndex implements sql.IndexAlterableTable.
func (*Table) Deleter ¶
func (t *Table) Deleter(*sql.Context) sql.RowDeleter
Deleter implements sql.DeletableTable.
func (*Table) DropColumn ¶
DropColumn implements sql.AlterableTable.
func (*Table) ExtraTableInfo ¶
func (t *Table) ExtraTableInfo() ExtraTableInfo
func (*Table) GetIndexes ¶
GetIndexes implements sql.IndexAddressableTable. This is only used for show index in SHOW INDEX and SHOW CREATE TABLE.
func (*Table) GetNextAutoIncrementValue ¶
GetNextAutoIncrementValue implements sql.AutoIncrementTable.
func (*Table) IndexedAccess ¶
func (t *Table) IndexedAccess(lookup sql.IndexLookup) sql.IndexedTable
IndexedAccess implements sql.IndexAddressableTable.
func (*Table) Inserter ¶
func (t *Table) Inserter(*sql.Context) sql.RowInserter
Inserter implements sql.InsertableTable.
func (*Table) ModifyColumn ¶
func (t *Table) ModifyColumn(ctx *sql.Context, columnName string, column *sql.Column, order *sql.ColumnOrder) error
ModifyColumn implements sql.AlterableTable.
func (*Table) PartitionRows ¶
PartitionRows implements sql.Table.
func (*Table) Partitions ¶
Partitions implements sql.Table.
func (*Table) PeekNextAutoIncrementValue ¶
PeekNextAutoIncrementValue implements sql.AutoIncrementTable.
func (*Table) PreciseMatch ¶
PreciseMatch implements sql.IndexAddressableTable.
func (*Table) PrimaryKeySchema ¶
func (t *Table) PrimaryKeySchema() sql.PrimaryKeySchema
PrimaryKeySchema implements sql.PrimaryKeyTable.
func (*Table) RenameIndex ¶
RenameIndex implements sql.IndexAlterableTable.
func (*Table) Replacer ¶
func (t *Table) Replacer(*sql.Context) sql.RowReplacer
Replacer implements sql.ReplaceableTable.