Documentation
¶
Index ¶
- Constants
- func AnyToAnys(a any) []any
- func ConvertParams(v any, escaper string) string
- func DeleteByIdSQL(tableName string) string
- func DeleteSQL(tableName, column string) string
- func ExistsByFilterExprs(db *sql.DB, tableName string, filters FilterExprs) (bool, error)
- func ExistsByFilterExprsSQL(tableName string, filters FilterExprs) string
- func ExistsByQuerySQL(qsql string) string
- func ExistsSQL(tableName, column string, withDeletedAt bool) string
- func StringConvertFor[T any](str string) (T, error)
- type ConditionOperation
- type ConditionTag
- type Cursor
- type FilterExpr
- type FilterExprMap
- type FilterExprs
- type Id
- type List
- type Ordered
- type Pagination
- type PaginationEmbedded
- type Range
- type RangeMode
- type Sort
- type SortExpr
- type SortType
- type Sorts
Constants ¶
View Source
const ( Mysql = "mysql" Postgres = "postgres" Sqlite = "sqlite" )
View Source
const ( TmFmtWithMS = "2006-01-02 15:04:05.999" NullStr = "NULL" )
View Source
const ( ColumnDeletedAt = "deleted_at" ColumnId = "id" ColumnName = "name" )
View Source
const ( ExprEqual = " = ?" ExprNotEqual = " != ?" ExprGreater = " > ?" )
View Source
const ( Insert = "INSERT" Select = "SELECT" Update = "UPDATE" Delete = "DELETE" LeftJoin = "LEFT JOIN" RightJoin = "RIGHT JOIN" InnerJoin = "INNER JOIN" Limit = `LIMIT %d` Offset = `OFFSET %d` Limit1 = `LIMIT 1` )
View Source
const ( NotDeleted = ColumnDeletedAt + " IS " + NullStr WithNotDeleted = ` AND ` + NotDeleted )
View Source
const ( IdEqual = ColumnId + ExprEqual NameEqual = ColumnName + ExprEqual )
View Source
const (
CondiTagName = "sqlcond" // e.g: `sqlcond:"column:id;operate:="`
)
Variables ¶
This section is empty.
Functions ¶
func ConvertParams ¶
func DeleteByIdSQL ¶
func ExistsByFilterExprs ¶
func ExistsByFilterExprsSQL ¶
func ExistsByFilterExprsSQL(tableName string, filters FilterExprs) string
func ExistsByQuerySQL ¶
func StringConvertFor ¶
Types ¶
type ConditionOperation ¶
type ConditionOperation int
const ( OperationPlace ConditionOperation = iota Equal NotEqual Greater Less Between GreaterOrEqual LessOrEqual IsNotNull IsNull In NotIn Like NotLike )
func ParseConditionOperation ¶
func ParseConditionOperation(op string) ConditionOperation
func (ConditionOperation) SQL ¶
func (m ConditionOperation) SQL() string
func (ConditionOperation) String ¶
func (m ConditionOperation) String() string
type ConditionTag ¶
type ConditionTag struct {
Column string `meta:"column"`
Operate string `meta:"operate"`
EmptyValid bool `meta:"emptyvalid"`
}
func GetConditionTagTag ¶ added in v1.6.11
func GetConditionTagTag(tag reflect.StructTag) (*ConditionTag, error)
type FilterExpr ¶
type FilterExpr struct {
Field string `json:"field,omitempty"`
Operation ConditionOperation `json:"op,omitempty"`
Value any `json:"value,omitempty"`
}
func (*FilterExpr) Build ¶
func (filter *FilterExpr) Build() string
type FilterExprMap ¶ added in v1.7.0
type FilterExprMap map[string]FilterExpr
type FilterExprs ¶
type FilterExprs []FilterExpr
func (FilterExprs) Build ¶
func (f FilterExprs) Build() string
func (FilterExprs) BuildSQL ¶
func (f FilterExprs) BuildSQL() (string, []any)
type List ¶ added in v1.7.0
type List struct {
Pagination Pagination `json:"page,omitempty"`
Sort Sorts `json:"sort,omitempty"`
Filters FilterExprs `json:"filters,omitempty"`
}
type Pagination ¶ added in v1.7.0
type PaginationEmbedded ¶ added in v1.7.0
type RangeMode ¶ added in v1.7.0
type RangeMode int8
func (RangeMode) ContainsBegin ¶ added in v1.7.0
func (RangeMode) ContainsEnd ¶ added in v1.7.0
Source Files
¶
Click to show internal directories.
Click to hide internal directories.