Documentation
¶
Index ¶
- Constants
- type SqliteDB
- func (db *SqliteDB) AddColumnsIfNotExists(tableName string, columnNames map[string]string) error
- func (db *SqliteDB) Close() error
- func (db *SqliteDB) Count(tableName string, conditions []string, args []interface{}) (int, error)
- func (db *SqliteDB) CreateTable(tableName string, columns []string) error
- func (db *SqliteDB) Delete(tableName string, conditions []string, args []interface{}) error
- func (db *SqliteDB) Exists(tableName string, conditions []string, args []interface{}) (bool, error)
- func (db *SqliteDB) InitDBTable() error
- func (db *SqliteDB) Insert(tableName string, data map[string]interface{}) error
- func (db *SqliteDB) InsertFilesDatabase(assetID string, totalPieces int64, operates, status int, modTime time.Time) error
- func (db *SqliteDB) InsertSlicesDatabase(assetID, sliceHash string, current, status int) error
- func (db *SqliteDB) ModifyColumnType(tableName string, columnName string, newColumnType string) error
- func (db *SqliteDB) Select(tableName string, columns []string, conditions []string, args []interface{}, ...) (*sql.Rows, error)
- func (db *SqliteDB) SelectOne(tableName string, columns []string, conditions []string, args []interface{}) (*sql.Row, error)
- func (db *SqliteDB) SelectOneAssetID(assetID string) bool
- func (db *SqliteDB) SelectOneSlicesDatabaseStatus(assetID string) (..., error)
- func (db *SqliteDB) Update(tableName string, data map[string]interface{}, conditions []string, ...) error
- func (db *SqliteDB) UpdateFileDatabaseStatus(assetID string, operates, status int) error
- func (db *SqliteDB) UpdateSlicesDatabaseStatus(assetID, sliceHash string, status int) error
Constants ¶
const (
DbFile = "database.db"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SqliteDB ¶
SqliteDB 是 SQLite 数据库的包装器
func NewSqliteDB ¶
NewSqliteDB 创建一个新的 SqliteDB 实例
func (*SqliteDB) AddColumnsIfNotExists ¶
新增列如果不存在 k是列名,v是数据类型。
func (*SqliteDB) CreateTable ¶
CreateTable 方法用于创建数据库表。tableName 是要创建的表名,columns 是列定义字符串的切片, 如 []string{"id INTEGER PRIMARY KEY", "name TEXT"}。
func (*SqliteDB) Delete ¶
Delete 方法在表中删除数据。tableName 是要删除数据的表的名字, conditions 是 WHERE 条件,args 是 conditions 中的参数值。
func (*SqliteDB) Exists ¶
Exists 方法用于查询是否存在满足条件的记录。 tableName 是要查询的表的名字,conditions 是 WHERE 条件,args 是 conditions 中的参数值。
func (*SqliteDB) InitDBTable ¶ added in v0.0.4
InitDBTable 数据库表
func (*SqliteDB) InsertFilesDatabase ¶ added in v0.0.4
func (db *SqliteDB) InsertFilesDatabase(assetID string, totalPieces int64, operates, status int, modTime time.Time) error
InsertFilesDatabase 插入文件数据
func (*SqliteDB) InsertSlicesDatabase ¶ added in v0.0.4
InsertSlicesDatabase 插入文件片段数据
func (*SqliteDB) ModifyColumnType ¶
func (db *SqliteDB) ModifyColumnType(tableName string, columnName string, newColumnType string) error
ModifyColumnType方法修改数据库表中指定列的数据类型。tableName是要修改的表的名字, columnName是要修改的列名,newColumnType是要修改成的数据类型。
func (*SqliteDB) Select ¶
func (db *SqliteDB) Select(tableName string, columns []string, conditions []string, args []interface{}, start, limit int, orderBy string) (*sql.Rows, error)
Select 方法从表中查询数据。tableName 是要查询的表的名字,columns 是要查询的列的名字, args 是 WHERE 条件中的参数值,start 是查询的起始行,limit 是查询的行数。conditions 是 WHERE 条件,可以为空。 orderBy 是排序字段,可以包含多个字段,以逗号分隔,例如 "field1 ASC, field2 DESC"。
func (*SqliteDB) SelectOne ¶
func (db *SqliteDB) SelectOne(tableName string, columns []string, conditions []string, args []interface{}) (*sql.Row, error)
SelectOne 方法从表中查询一条数据。tableName 是要查询的表的名字,columns 是要查询的列的名字, args 是 WHERE 条件中的参数值,conditions 是 WHERE 条件,可以为空。
func (*SqliteDB) SelectOneAssetID ¶ added in v0.0.4
SelectOneAssetID 查询制定的文件资产是否存在
func (*SqliteDB) SelectOneSlicesDatabaseStatus ¶ added in v0.0.4
func (db *SqliteDB) SelectOneSlicesDatabaseStatus(assetID string) (*struct { SliceHash string // 文件片段的哈希值 SliceIndex int // 文件片段的索引 }, error)
SelectOneSlicesDatabaseStatus 查询指定文件的片段数据对象信息
func (*SqliteDB) Update ¶
func (db *SqliteDB) Update(tableName string, data map[string]interface{}, conditions []string, args []interface{}) error
Update 方法在表中更新数据。tableName 是要更新的表的名字, data 是一个 map,其中键是列名,值是新的值,conditions 是 WHERE 条件,args 是 conditions 中的参数值。
func (*SqliteDB) UpdateFileDatabaseStatus ¶ added in v0.0.4
UpdateFileDatabaseStatus 更新文件数据对象的状态 operates 操作(0:下载、1:上传) status 状态(0:失败、1:成功、2:待开始、3:进行中)