Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlterStmt ¶
AlterStmt is a DSL that allows creating a full ALTER TABLE query.
func (AlterStmt) IsReadOnly ¶
IsReadOnly always returns false. It implements the Statement interface.
type AlterTableAddField ¶
type AlterTableAddField struct { TableName string Constraint database.FieldConstraint }
func (AlterTableAddField) IsReadOnly ¶
func (stmt AlterTableAddField) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (AlterTableAddField) Run ¶
func (stmt AlterTableAddField) Run(tx *database.Transaction, _ []expr.Param) (Result, error)
Run runs the ALTER TABLE ADD FIELD statement in the given transaction. It implements the Statement interface.
type BeginStmt ¶
type BeginStmt struct {
Writable bool
}
BeginStmt is a statement that creates a new transaction.
func (BeginStmt) IsReadOnly ¶
type CommitStmt ¶
type CommitStmt struct{}
CommitStmt is a statement that commits the current active transaction.
func (CommitStmt) IsReadOnly ¶
func (stmt CommitStmt) IsReadOnly() bool
func (CommitStmt) Run ¶
func (stmt CommitStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
type CreateIndexStmt ¶
CreateIndexStmt is a DSL that allows creating a full CREATE INDEX statement. It is typically created using the CreateIndex function.
func (CreateIndexStmt) IsReadOnly ¶
func (stmt CreateIndexStmt) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (CreateIndexStmt) Run ¶
func (stmt CreateIndexStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
Run runs the Create index statement in the given transaction. It implements the Statement interface.
type CreateTableStmt ¶
CreateTableStmt is a DSL that allows creating a full CREATE TABLE statement.
func (CreateTableStmt) IsReadOnly ¶
func (stmt CreateTableStmt) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (CreateTableStmt) Run ¶
func (stmt CreateTableStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
Run runs the Create table statement in the given transaction. It implements the Statement interface.
type DropIndexStmt ¶
DropIndexStmt is a DSL that allows creating a DROP INDEX query.
func (DropIndexStmt) IsReadOnly ¶
func (stmt DropIndexStmt) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (DropIndexStmt) Run ¶
func (stmt DropIndexStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
Run runs the DropIndex statement in the given transaction. It implements the Statement interface.
type DropTableStmt ¶
DropTableStmt is a DSL that allows creating a DROP TABLE query.
func (DropTableStmt) IsReadOnly ¶
func (stmt DropTableStmt) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (DropTableStmt) Run ¶
func (stmt DropTableStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
Run runs the DropTable statement in the given transaction. It implements the Statement interface.
type ExplainStmt ¶
type ExplainStmt struct {
Statement Statement
}
ExplainStmt is a Statement that displays information about how a statement is going to be executed, without executing it.
func (*ExplainStmt) IsReadOnly ¶
func (s *ExplainStmt) IsReadOnly() bool
IsReadOnly indicates that this statement doesn't write anything into the database.
func (*ExplainStmt) Run ¶
func (s *ExplainStmt) Run(tx *database.Transaction, params []expr.Param) (Result, error)
Run analyses the inner statement and displays its execution plan. If the statement is a stream, Optimize will be called prior to displaying all the operations. Explain currently only works on SELECT, UPDATE, INSERT and DELETE statements.
type Query ¶
type Query struct { Statements []Statement // contains filtered or unexported fields }
A Query can execute statements against the database. It can read or write data from any table, or even alter the structure of the database. Results are returned as streams.
type ReIndexStmt ¶
type ReIndexStmt struct {
TableOrIndexName string
}
ReIndexStmt is a DSL that allows creating a full REINDEX statement.
func (ReIndexStmt) IsReadOnly ¶
func (stmt ReIndexStmt) IsReadOnly() bool
IsReadOnly always returns false. It implements the Statement interface.
func (ReIndexStmt) Run ¶
func (stmt ReIndexStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
Run runs the Reindex statement in the given transaction. It implements the Statement interface.
type Result ¶
type Result struct { Iterator document.Iterator Tx *database.Transaction // contains filtered or unexported fields }
Result of a query.
type RollbackStmt ¶
type RollbackStmt struct{}
RollbackStmt is a statement that rollbacks the current active transaction.
func (RollbackStmt) IsReadOnly ¶
func (stmt RollbackStmt) IsReadOnly() bool
func (RollbackStmt) Run ¶
func (stmt RollbackStmt) Run(tx *database.Transaction, args []expr.Param) (Result, error)
type Statement ¶
type Statement interface { Run(*database.Transaction, []expr.Param) (Result, error) IsReadOnly() bool }
A Statement represents a unique action that can be executed against the database.
type StreamStmt ¶
StreamStmt is a StreamStmt using a Stream.
func (*StreamStmt) IsReadOnly ¶
func (s *StreamStmt) IsReadOnly() bool
IsReadOnly reports whether the stream will modify the database or only read it.
func (*StreamStmt) Run ¶
func (s *StreamStmt) Run(tx *database.Transaction, params []expr.Param) (Result, error)
Run returns a result containing the stream. The stream will be executed by calling the Iterate method of the result.
func (*StreamStmt) String ¶
func (s *StreamStmt) String() string
type StreamStmtIterator ¶
type StreamStmtIterator struct { Stream *stream.Stream Tx *database.Transaction Params []expr.Param }
StreamStmtIterator iterates over a stream.