Documentation ¶
Index ¶
- Constants
- func CheckRowsAffected(sqlResult sql.Result, expectedValue cmb.Count) (err error)
- func CheckRowsAffectedAndGetLastInsertedId(sqlResult sql.Result, expectedValue cmb.Count) (lastInsertedId cmb.Id, err error)
- func GetLastInsertedId(sqlResult sql.Result) (lastInsertedId cmb.Id, err error)
- type DatabaseObject
- func (dbo *DatabaseObject) DB() *sql.DB
- func (dbo *DatabaseObject) Fin() (err error)
- func (dbo *DatabaseObject) Init(preparedStatementQueryStrings []string) (err error)
- func (dbo *DatabaseObject) LockForReading()
- func (dbo *DatabaseObject) LockForWriting()
- func (dbo *DatabaseObject) PrefixTableName(tableName string) (tableNameFull string)
- func (dbo *DatabaseObject) PreparedStatement(psIndex int) *sql.Stmt
- func (dbo *DatabaseObject) ProbeDb() (err error)
- func (dbo *DatabaseObject) UnlockAfterReading()
- func (dbo *DatabaseObject) UnlockAfterWriting()
Constants ¶
const ( SqlScriptFileExt = "sql" FileExtensionSeparator = "." TableNamePrefixSeparator = "_" SearchPattern_CreateTableIfNotExists = "CREATE TABLE IF NOT EXISTS %s" LastInsertedIdOnError = -1 CountOnError = -1 IdOnError = 0 )
const ( ErrTableNameIsNotFound = "table name is not found" ErrFRowsAffectedCount = "affected rows count error: %v vs %v" )
const ( Query_SaveIncident = `INSERT INTO %s (Module, Type, Email, UserIPAB) VALUES (?, ?, ?, ?);` Query_SaveIncidentWithoutUserIPA = `INSERT INTO %s (Module, Type, Email) VALUES (?, ?, ?);` )
Query format strings of prepared statements.
Variables ¶
This section is empty.
Functions ¶
func CheckRowsAffected ¶ added in v0.0.54
func CheckRowsAffectedAndGetLastInsertedId ¶ added in v0.0.54
Types ¶
type DatabaseObject ¶
type DatabaseObject struct {
// contains filtered or unexported fields
}
DatabaseObject is a common database object, an entity managing all operations related to database.
func NewDatabaseObject ¶
func NewDatabaseObject(settings cs.DbSettings) (dbo *DatabaseObject)
func (*DatabaseObject) DB ¶
func (dbo *DatabaseObject) DB() *sql.DB
func (*DatabaseObject) Fin ¶
func (dbo *DatabaseObject) Fin() (err error)
Fin disconnects from the database.
func (*DatabaseObject) Init ¶
func (dbo *DatabaseObject) Init(preparedStatementQueryStrings []string) (err error)
Init connects to the database, initialises the tables and prepares SQL statements. Before calling this method, a user must manually initialise table names and a list of query strings which will be used as prepared statements.
func (*DatabaseObject) LockForReading ¶
func (dbo *DatabaseObject) LockForReading()
LockForReading locks database access for reading operations.
func (*DatabaseObject) LockForWriting ¶
func (dbo *DatabaseObject) LockForWriting()
LockForWriting locks database access for writing operations.
func (*DatabaseObject) PrefixTableName ¶
func (dbo *DatabaseObject) PrefixTableName(tableName string) (tableNameFull string)
func (*DatabaseObject) PreparedStatement ¶
func (dbo *DatabaseObject) PreparedStatement(psIndex int) *sql.Stmt
func (*DatabaseObject) ProbeDb ¶
func (dbo *DatabaseObject) ProbeDb() (err error)
ProbeDb pings the database server.
func (*DatabaseObject) UnlockAfterReading ¶
func (dbo *DatabaseObject) UnlockAfterReading()
UnlockAfterReading unlocks database access after reading operations.
func (*DatabaseObject) UnlockAfterWriting ¶
func (dbo *DatabaseObject) UnlockAfterWriting()
UnlockAfterWriting unlocks database access after writing operations.