database

package
v0.0.0-...-afd8780 Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Close

func Close() error

Close closes the database connection

func Connect

func Connect(config Config) error

Connect establishes a database connection

func DB

func DB() *sql.DB

DB returns the database connection

func IsConnected

func IsConnected() bool

IsConnected checks if database is connected

Types

type Config

type Config struct {
	Adapter  string
	Database string
	Host     string
	Port     string
	Username string
	Password string
	SSLMode  string
}

Config holds database configuration

type Model

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

Model is the base model that provides common functionality

func NewModel

func NewModel(tableName string) *Model

NewModel creates a new model instance

func (*Model) Create

func (m *Model) Create(data interface{}) error

Create inserts a new record

func (*Model) Delete

func (m *Model) Delete(id interface{}) error

Delete deletes a record

func (*Model) Find

func (m *Model) Find(id interface{}, dest interface{}) error

Find finds a record by ID

func (*Model) FindAll

func (m *Model) FindAll(dest interface{}) error

FindAll finds all records

func (*Model) Table

func (m *Model) Table(name string) *Model

Table sets the table name

func (*Model) Update

func (m *Model) Update(id interface{}, data interface{}) error

Update updates a record

func (*Model) Where

func (m *Model) Where(condition string, args ...interface{}) *QueryBuilder

Where adds a WHERE clause

type QueryBuilder

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

QueryBuilder builds database queries

func (*QueryBuilder) All

func (qb *QueryBuilder) All(dest interface{}) error

All finds all matching records

func (*QueryBuilder) First

func (qb *QueryBuilder) First(dest interface{}) error

First finds the first matching record

func (*QueryBuilder) Limit

func (qb *QueryBuilder) Limit(limit int) *QueryBuilder

Limit sets the LIMIT

func (*QueryBuilder) Offset

func (qb *QueryBuilder) Offset(offset int) *QueryBuilder

Offset sets the OFFSET

func (*QueryBuilder) Order

func (qb *QueryBuilder) Order(orderBy string) *QueryBuilder

Order adds ORDER BY clause

func (*QueryBuilder) Where

func (qb *QueryBuilder) Where(condition string, args ...interface{}) *QueryBuilder

Where adds another WHERE clause

type Timestamps

type Timestamps struct {
	CreatedAt time.Time `db:"created_at"`
	UpdatedAt time.Time `db:"updated_at"`
}

Timestamps adds created_at and updated_at fields

Jump to

Keyboard shortcuts

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