storage

package
v1.0.6 Latest Latest
Warning

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

Go to latest
Published: May 14, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Database

type Database struct {
	*query.Database
	// contains filtered or unexported fields
}

Database represents a destination or source database of query.

func NewDatabase

func NewDatabase() *Database

NewDatabase returns a new database.

func NewDatabaseWithName

func NewDatabaseWithName(name string) *Database

NewDatabaseWithName returns a new database with the specified string.

func (*Database) AddTable

func (ks *Database) AddTable(table *Table)

AddTable adds a specified table into the database.

func (*Database) AddTables

func (ks *Database) AddTables(tables []*Table)

AddTables adds a specified tables into the database.

func (*Database) DropTable

func (ks *Database) DropTable(table *Table) bool

DropTable remove the specified table.

func (*Database) GetTable

func (ks *Database) GetTable(name string) (*Table, bool)

GetTable returns a table with the specified name.

func (*Database) Tables

func (ks *Database) Tables() []*Table

Tables returns all tables in the database.

type Databases

type Databases map[string]*Database

Databases represents a collection of databases.

func NewDatabases

func NewDatabases() Databases

NewDatabases returns a databases instance.

func (Databases) AddDatabase

func (dbs Databases) AddDatabase(db *Database) error

AddDatabase adds a specified database.

func (Databases) DropDatabase

func (dbs Databases) DropDatabase(db *Database) bool

DropDatabase remove the specified database.

func (Databases) GetDatabase

func (dbs Databases) GetDatabase(name string) (*Database, bool)

GetDatabase returns a database with the specified name.

func (*Databases) GetTableWithDatabase

func (dbs *Databases) GetTableWithDatabase(dbName string, tableName string) (*Table, bool)

GetTableWithDatabase returns a specified table in a specified database.

type MemStore

type MemStore struct {
	*mysql.BaseExecutor
	Databases
}

func NewMemStore

func NewMemStore() *MemStore

NewMemStore returns an in-memory storeinstance.

func (*MemStore) AlterDatabase

func (store *MemStore) AlterDatabase(conn *mysql.Conn, stmt *query.Database) (*mysql.Result, error)

AlterDatabase should handle a ALTER database statement.

func (*MemStore) AlterTable

func (store *MemStore) AlterTable(conn *mysql.Conn, stmt *query.Schema) (*mysql.Result, error)

AlterTable should handle a ALTER table statement.

func (*MemStore) Begin added in v1.0.5

func (store *MemStore) Begin(conn *mysql.Conn, stmt *query.Begin) (*mysql.Result, error)

Begin should handle a BEGIN statement.

func (*MemStore) Commit added in v1.0.5

func (store *MemStore) Commit(conn *mysql.Conn, stmt *query.Commit) (*mysql.Result, error)

Commit should handle a COMMIT statement.

func (*MemStore) CreateDatabase

func (store *MemStore) CreateDatabase(conn *mysql.Conn, stmt *query.Database) (*mysql.Result, error)

CreateDatabase should handle a CREATE database statement.

func (*MemStore) CreateTable

func (store *MemStore) CreateTable(conn *mysql.Conn, stmt *query.Schema) (*mysql.Result, error)

CreateTable should handle a CREATE table statement.

func (*MemStore) Delete

func (store *MemStore) Delete(conn *mysql.Conn, stmt *query.Delete) (*mysql.Result, error)

Delete should handle a DELETE statement.

func (*MemStore) DropDatabase

func (store *MemStore) DropDatabase(conn *mysql.Conn, stmt *query.Database) (*mysql.Result, error)

DropDatabase should handle a DROP database statement.

func (*MemStore) DropTable

func (store *MemStore) DropTable(conn *mysql.Conn, stmt *query.Schema) (*mysql.Result, error)

DropTable should handle a DROP table statement.

func (*MemStore) Insert

func (store *MemStore) Insert(conn *mysql.Conn, stmt *query.Insert) (*mysql.Result, error)

Insert should handle a INSERT statement.

func (*MemStore) RenameTable

func (store *MemStore) RenameTable(conn *mysql.Conn, stmt *query.Schema) (*mysql.Result, error)

RenameTable should handle a RENAME table statement.

func (*MemStore) Rollback added in v1.0.5

func (store *MemStore) Rollback(conn *mysql.Conn, stmt *query.Rollback) (*mysql.Result, error)

Rollback should handle a ROLLBACK statement.

func (*MemStore) Select

func (store *MemStore) Select(conn *mysql.Conn, stmt *query.Select) (*mysql.Result, error)

Select should handle a SELECT statement.

func (*MemStore) ShowDatabases

func (store *MemStore) ShowDatabases(conn *mysql.Conn) (*mysql.Result, error)

ShowDatabases should handle a SHOW DATABASES statement.

func (*MemStore) ShowTables

func (store *MemStore) ShowTables(conn *mysql.Conn, database string) (*mysql.Result, error)

ShowTables should handle a SHOW TABLES statement.

func (*MemStore) TruncateTable

func (store *MemStore) TruncateTable(conn *mysql.Conn, stmt *query.Schema) (*mysql.Result, error)

TruncateTable should handle a TRUNCATE table statement.

func (*MemStore) Update

func (store *MemStore) Update(conn *mysql.Conn, stmt *query.Update) (*mysql.Result, error)

Update should handle a UPDATE statement.

type Row

type Row = query.Row

type Rows

type Rows = query.Rows

type Schema

type Schema = query.Schema

type Table

type Table struct {
	sync.Mutex

	*query.Schema
	*query.Rows
	// contains filtered or unexported fields
}

Table represents a destination or source database of query.

func NewTable

func NewTable() *Table

NewTable returns a new database.

func NewTableWith added in v1.0.4

func NewTableWith(name string, schema *Schema) *Table

NewTableWith returns a new database with the specified string.

func (*Table) Delete

func (tbl *Table) Delete(cond *query.Condition) (int, error)

Delete deletes rows which are satisfied by the specified conditions.

func (*Table) DeleteAll

func (tbl *Table) DeleteAll() int

DeleteAll deletes all rows in the table.

func (*Table) Dump

func (tbl *Table) Dump()

Dump outputs all row values for debug.

func (*Table) Insert

func (tbl *Table) Insert(row *Row) error

Insert adds a row.

func (*Table) Name

func (tbl *Table) Name() string

Name returns the database name.

func (*Table) Select

func (tbl *Table) Select(cond *query.Condition) (*Rows, error)

Select returns only matched and projected rows by the specified conditions and the columns.

func (*Table) SetSchema

func (tbl *Table) SetSchema(schema *Schema)

SetSchema sets a specified schema.

func (*Table) String

func (tbl *Table) String() string

String returns the string representation.

func (*Table) Update

func (tbl *Table) Update(columns *query.Columns, cond *query.Condition) (int, error)

Update updates rows which are satisfied by the specified columns and conditions.

Jump to

Keyboard shortcuts

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