Index | Files

package sqlindex

import ""

Package sqlindex implements the sorted.KeyValue interface using an *sql.DB.


Package Files


type Storage Uses

type Storage struct {
    DB  *sql.DB

    // SetFunc is an optional func to use when REPLACE INTO does not exist
    SetFunc      func(*sql.DB, string, string) error
    BatchSetFunc func(*sql.Tx, string, string) error

    // PlaceHolderFunc optionally replaces ? placeholders with the right ones for the rdbms
    // in use
    PlaceHolderFunc func(string) string

    // Serial determines whether a Go-level mutex protects DB from
    // concurrent access.  This isn't perfect and exists just for
    // SQLite, whose driver likes to return "the database is
    // locked" (, so this keeps some
    // pressure off. But we still trust SQLite to deal with
    // concurrency in most cases.
    Serial bool
    // contains filtered or unexported fields

Storage implements the sorted.KeyValue interface using an *sql.DB.

func (*Storage) BeginBatch Uses

func (s *Storage) BeginBatch() sorted.BatchMutation

func (*Storage) Close Uses

func (s *Storage) Close() error

func (*Storage) CommitBatch Uses

func (s *Storage) CommitBatch(b sorted.BatchMutation) error

func (*Storage) Delete Uses

func (s *Storage) Delete(key string) error

func (*Storage) Find Uses

func (s *Storage) Find(start, end string) sorted.Iterator

func (*Storage) Get Uses

func (s *Storage) Get(key string) (value string, err error)

func (*Storage) Set Uses

func (s *Storage) Set(key, value string) error

Package sqlindex imports 7 packages (graph). Updated 2019-06-16. Refresh now. Tools for package owners. This is an inactive package (no imports and no commits in at least two years).