database

package
v0.0.0-...-646cb8e Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2021 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AbstractDBController

type AbstractDBController struct {
	DB        *DatabaseOp
	TableName string
	Columns   string
}

func (*AbstractDBController) ClearDB

func (c *AbstractDBController) ClearDB() error

Clear all data in table.

func (*AbstractDBController) CreateTable

func (c *AbstractDBController) CreateTable() error

Create table. If the table already exists, it will not be created.

type Answer

type Answer struct {
	Id     string `db:"id" json:"id"`
	UserId string `db:"user_id" json:"user_id"`
	Name   string `db:"name" json:"name"`
	Answer string `db:"answer" json:"answer"`
}

type Config

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

func NewConfig

func NewConfig(user string, dbName string, password string) *Config

Create DB connect config.

Arguments:

user {string} - User name.
dbName {string} - database name.
password {string} - password to connect database.

Returns:

{*Config} - Database config.

func NewLocalConfig

func NewLocalConfig(user string, dbName string, password string) *Config

Create DB connect config by local.

Arguments:

user {string} - User name.
dbName {string} - database name.
password {string} - password to connect database.

Returns:

{*Config} - Database config.

type ConnectUser

type ConnectUser struct {
	Id     string `db:"id"`
	UserId string `db:"user_id"`
}

type DBAnswers

type DBAnswers struct {
	AbstractDBController
}

func NewDBAnswers

func NewDBAnswers(tableName string, db *DatabaseOp) *DBAnswers

Create instance of answers db.

Arguments:

tableName {string} - table name.
db {*DatabaseOp} - database instance.

Returns:

{*DBConnectUsers} - user connect db instance.

func (*DBAnswers) AddAnswer

func (c *DBAnswers) AddAnswer(data *Answer) error

Insert the new answer.

Arguments: data {*Answer} - Answer data.

func (*DBAnswers) Delete

func (c *DBAnswers) Delete(targetId string) error

Delete all target id information.

Arguments:

targetId {string} - Target id to delete.

func (*DBAnswers) GetAnswers

func (c *DBAnswers) GetAnswers(targetId string) ([]Answer, error)

Get the all answers.

Arguments:

targetId {string} - target id.

Returns:

{[]Answer} - all answers.

type DBConnectUsers

type DBConnectUsers struct {
	AbstractDBController
}

func NewDBConnectUsers

func NewDBConnectUsers(tableName string, db *DatabaseOp) *DBConnectUsers

Create instance of user connect db.

Arguments:

tableName {string} - table name.
db {*DatabaseOp} - database instance.

Returns:

{*DBConnectUsers} - user connect db instance.

func (*DBConnectUsers) AddUser

func (c *DBConnectUsers) AddUser(data *ConnectUser) error

Add the participating users.

Arguments:

data {ConnetUser} - user data.

func (*DBConnectUsers) Delete

func (c *DBConnectUsers) Delete(targetId string) error

Delete all target id information.

Arguments:

targetId {string} - Target id to delete.

func (*DBConnectUsers) DeleteUser

func (c *DBConnectUsers) DeleteUser(userId string) error

Delete user_id information.

Arguments:

userId {string} - user id to delete.

func (*DBConnectUsers) GetUserNumber

func (c *DBConnectUsers) GetUserNumber(targetId string) (int, error)

Gets the number of users participating in the target id.

Arguments:

targetId {string} - Target id.

Returns:

{int} - Number of participants.

type DBTopic

type DBTopic struct {
	AbstractDBController
}

func NewDBTopic

func NewDBTopic(tableName string, db *DatabaseOp) *DBTopic

Create instance of topic db.

Arguments:

tableName {string} - table name.
db {*DatabaseOp} - database instance.

Returns:

{*DBConnectUsers} - topic db instance.

func (*DBTopic) CreateTopic

func (c *DBTopic) CreateTopic(topic *Topic) error

Create topics.

Arguments:

topic {*Topic} - topic data.

func (*DBTopic) Delete

func (c *DBTopic) Delete(id string) error

Delete topic information.

Arguments:

id {string} - topic id.

func (*DBTopic) Exist

func (c *DBTopic) Exist(id string) (bool, error)

Exist id

Arguments:

id {string} - topic id.

Returns:

{bool} - true if exist.

func (*DBTopic) GetIsUpdate

func (c *DBTopic) GetIsUpdate(id string) (bool, error)

Get update flag.

Arguments:

id {string} - topic id.

Returns:

{bool} - update flag.

func (*DBTopic) GetTopic

func (c *DBTopic) GetTopic(id string) (string, error)

Get the topic.

Arguments:

id {string} - topic id.

Returns:

{string} - topic text.

func (*DBTopic) UpdateTopic

func (c *DBTopic) UpdateTopic(topic *Topic) error

Update topics.

Arguments:

topic {*Topic} - new topic

type DatabaseOp

type DatabaseOp struct {
	Db *sql.DB
}

func NewDatabase

func NewDatabase(config *Config) (*DatabaseOp, error)

Create DB op.

Arguments:

config {Config} - db config.

Returns:

{*DatabaseOp} - database op instance.

func (*DatabaseOp) Close

func (c *DatabaseOp) Close()

func (*DatabaseOp) Count

func (c *DatabaseOp) Count(sql string, args ...interface{}) (int, error)

Count query.

Arguments:

sql {string} - text for sql.
args {...interface{}} - args

Returns:

{int} - count value.

func (*DatabaseOp) CreateTable

func (c *DatabaseOp) CreateTable(tableName string, columns string) error

Create db table.

warn: Columns must be defined programmatically due to the risk of SQL injection.

Arguments:

tableName {string} - table name.
columns {string} - columns.

func (*DatabaseOp) Execute

func (c *DatabaseOp) Execute(sql string, args ...interface{}) (sql.Result, error)

SQL Execute. example: create, insert, update, delete ...

Arguments:

sql {string} - text for sql.
args {...interface{}} - args

Returns:

{sql.Result} - results.

func (*DatabaseOp) GetBool

func (c *DatabaseOp) GetBool(sql string, args ...interface{}) (bool, error)

Get bool type.

Arguments:

sql {string} - text for sql.
args {...interface{}} - args

Returns:

{bool} - result.

func (*DatabaseOp) GetText

func (c *DatabaseOp) GetText(sql string, args ...interface{}) (string, error)

Get one text.

Arguments:

sql {string} - text for sql.
args {...interface{}} - args

Returns:

{string} - texts.

func (*DatabaseOp) Query

func (c *DatabaseOp) Query(sql string, args ...interface{}) (*sql.Rows, error)

SQL Query.

Arguments:

sql {string} - text for sql.
args {...interface{}} - args

Returns:

{*sql.Rows} - results.

type Topic

type Topic struct {
	Id       string `db:"id"`
	Topic    string `db:"topic"`
	IsUpdate bool   `db:"is_update"`
}

Jump to

Keyboard shortcuts

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