db

package
v4.5.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2019 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package db exposes a lightweight abstraction over the SQLite code. It performs some basic mapping of lower-level types to rqlite types.

Index

Constants

This section is empty.

Variables

View Source
var DBVersion string

DBVersion is the SQLite version.

Functions

This section is empty.

Types

type DB

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

DB is the SQL database.

func LoadInMemoryWithDSN

func LoadInMemoryWithDSN(dbPath, dsn string) (*DB, error)

LoadInMemoryWithDSN loads an in-memory database with that at the path, with the specified DSN

func Open

func Open(dbPath string) (*DB, error)

Open opens a file-based database, creating it if it does not exist.

func OpenInMemory

func OpenInMemory() (*DB, error)

OpenInMemory opens an in-memory database.

func OpenInMemoryWithDSN

func OpenInMemoryWithDSN(dsn string) (*DB, error)

OpenInMemoryWithDSN opens an in-memory database with a specific DSN.

func OpenWithDSN

func OpenWithDSN(dbPath, dsn string) (*DB, error)

OpenWithDSN opens a file-based database, creating it if it does not exist.

func (*DB) Backup

func (db *DB) Backup(path string) error

Backup writes a consistent snapshot of the database to the given file.

func (*DB) Close

func (db *DB) Close() error

Close closes the underlying database connection.

func (*DB) EnableFKConstraints

func (db *DB) EnableFKConstraints(e bool) error

EnableFKConstraints allows control of foreign key constraint checks.

func (*DB) Execute

func (db *DB) Execute(queries []string, tx, xTime bool) ([]*Result, error)

Execute executes queries that modify the database.

func (*DB) FKConstraints

func (db *DB) FKConstraints() (bool, error)

FKConstraints returns whether FK constraints are set or not.

func (*DB) Query

func (db *DB) Query(queries []string, tx, xTime bool) ([]*Rows, error)

Query executes queries that return rows, but don't modify the database.

type Result

type Result struct {
	LastInsertID int64   `json:"last_insert_id,omitempty"`
	RowsAffected int64   `json:"rows_affected,omitempty"`
	Error        string  `json:"error,omitempty"`
	Time         float64 `json:"time,omitempty"`
}

Result represents the outcome of an operation that changes rows.

type Rows

type Rows struct {
	Columns []string        `json:"columns,omitempty"`
	Types   []string        `json:"types,omitempty"`
	Values  [][]interface{} `json:"values,omitempty"`
	Error   string          `json:"error,omitempty"`
	Time    float64         `json:"time,omitempty"`
}

Rows represents the outcome of an operation that returns query data.

Jump to

Keyboard shortcuts

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