smartdb

package
v0.0.0-...-642df0c Latest Latest
Warning

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

Go to latest
Published: Jan 14, 2024 License: BSD-3-Clause Imports: 8 Imported by: 0

Documentation

Overview

REQUIRE: go 1.19 or later

REQUIRE: go 1.19 or later

Index

Constants

View Source
const (
	DB_SQL_TYPE_SQLITE string = "sqlite3"
	DB_SQL_TYPE_PGSQL  string = "postgres"
	DB_SQL_TYPE_MYSQL  string = "mysql"

	HARD_LIMIT_ROWS uint64 = 1000000 // get max 1 million rows
)
View Source
const (
	VERSION string = "v.20240114.2007"
	NAME    string = "SmartGo.DB"

	ENCODING string = "UTF8"
)
View Source
const MYSQL_INIT_META_TABLE string = `` /* 551-byte string literal not displayed */
View Source
const PGSQL_INIT_META_TABLE string = `` /* 806-byte string literal not displayed */
View Source
const SQLITE_INIT_META_TABLE string = `` /* 524-byte string literal not displayed */

Variables

This section is empty.

Functions

func GetArrFromSQLRows

func GetArrFromSQLRows(rows *sql.Rows) (arr []map[string]string, err error)

Types

type DbSqlConnector

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

func NewSqlDb

func NewSqlDb(dbType string, dbUrl string, debug bool) (DbSqlConnector, error)

func (*DbSqlConnector) CheckConnection

func (conn *DbSqlConnector) CheckConnection() bool

func (*DbSqlConnector) CloseConnection

func (conn *DbSqlConnector) CloseConnection() error

func (*DbSqlConnector) CountData

func (conn *DbSqlConnector) CountData(query string, params ...any) (int64, error)

func (*DbSqlConnector) CountTxData

func (conn *DbSqlConnector) CountTxData(tx *sql.Tx, query string, params ...any) (int64, error)

func (*DbSqlConnector) GetConnectionInfo

func (conn *DbSqlConnector) GetConnectionInfo() string

func (*DbSqlConnector) OpenConnection

func (conn *DbSqlConnector) OpenConnection() (*sql.DB, error)

func (*DbSqlConnector) ReadData

func (conn *DbSqlConnector) ReadData(query string, params ...any) ([]map[string]string, error)

func (*DbSqlConnector) ReadOneData

func (conn *DbSqlConnector) ReadOneData(query string, params ...any) (map[string]string, error)

func (*DbSqlConnector) ReadTxData

func (conn *DbSqlConnector) ReadTxData(tx *sql.Tx, query string, params ...any) ([]map[string]string, error)

func (*DbSqlConnector) ReadTxOneData

func (conn *DbSqlConnector) ReadTxOneData(tx *sql.Tx, query string, params ...any) (map[string]string, error)

func (*DbSqlConnector) TransactionCommit

func (conn *DbSqlConnector) TransactionCommit(tx *sql.Tx) error

func (*DbSqlConnector) TransactionRollback

func (conn *DbSqlConnector) TransactionRollback(tx *sql.Tx) error

func (*DbSqlConnector) TransactionStart

func (conn *DbSqlConnector) TransactionStart() (*sql.Tx, error)

In GoLang opposite to PHP, there is only one connection with possible asynchronous writes. Because of this, should NEVER use direct SQL: BEGIN / TOLLBACK / COMMIT on the connection, they should always be isolated insite a TX transaction !

func (*DbSqlConnector) WriteData

func (conn *DbSqlConnector) WriteData(query string, params ...any) (int64, error)

func (*DbSqlConnector) WriteTxData

func (conn *DbSqlConnector) WriteTxData(tx *sql.Tx, query string, params ...any) (int64, error)

Directories

Path Synopsis
Package pq is a pure Go Postgres driver for the database/sql package.
Package pq is a pure Go Postgres driver for the database/sql package.
oid
Package oid contains OID constants as defined by the Postgres server.
Package oid contains OID constants as defined by the Postgres server.
scram
Package scram implements a SCRAM-{SHA-1,etc} client per RFC5802.
Package scram implements a SCRAM-{SHA-1,etc} client per RFC5802.
Package mysql provides a MySQL driver for Go's database/sql package.
Package mysql provides a MySQL driver for Go's database/sql package.
Package redcon implements a Redis compatible server framework
Package redcon implements a Redis compatible server framework
redigo
redis
Package redis is a client for the Redis database.
Package redis is a client for the Redis database.
redisx
Package redisx contains experimental features for Redigo.
Package redisx contains experimental features for Redigo.

Jump to

Keyboard shortcuts

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