• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Golang db.GetDb函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Golang中github.com/eirka/eirka-libs/db.GetDb函数的典型用法代码示例。如果您正苦于以下问题:Golang GetDb函数的具体用法?Golang GetDb怎么用?Golang GetDb使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了GetDb函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。

示例1: Delete

// Delete will remove the entry
func (m *DeleteImageTagModel) Delete() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("DeleteImageTagModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	ps1, err := dbase.Prepare(`DELETE tm FROM tagmap AS tm
    INNER JOIN tags ON tm.tag_id = tags.tag_id
    WHERE image_id = ? AND tm.tag_id = ? AND ib_id = ?`)
	if err != nil {
		return
	}
	defer ps1.Close()

	_, err = ps1.Exec(m.Image, m.Tag, m.Ib)
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:30,代码来源:deleteimagetag.go


示例2: Delete

// Delete will remove the entry
func (m *DeleteTagModel) Delete() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("DeleteTagModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	ps1, err := dbase.Prepare("DELETE FROM tags WHERE tag_id= ? AND ib_id = ? LIMIT 1")
	if err != nil {
		return
	}
	defer ps1.Close()

	_, err = ps1.Exec(m.ID, m.Ib)
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:28,代码来源:deletetag.go


示例3: Update

// Update will update the entry
func (m *UpdateTagModel) Update() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("UpdateTagModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	ps1, err := dbase.Prepare("UPDATE tags SET tag_name= ?, tagtype_id= ? WHERE tag_id = ? AND ib_id = ?")
	if err != nil {
		return
	}
	defer ps1.Close()

	_, err = ps1.Exec(m.Tag, m.TagType, m.ID, m.Ib)
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:28,代码来源:updatetag.go


示例4: FromName

// FromName will get the password and user id from the database for a user name
func (u *User) FromName(name string) (err error) {

	// name cant be empty
	if len(name) == 0 {
		return e.ErrUserNotValid
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// get hashed password from database
	err = dbase.QueryRow("select user_id, user_password from users where user_name = ?", name).Scan(&u.ID, &u.hash)
	if err != nil {
		return
	}

	u.SetAuthenticated()

	if !u.IsValid() {
		return e.ErrUserNotValid
	}

	return

}
开发者ID:eirka,项目名称:eirka-libs,代码行数:29,代码来源:user.go


示例5: Delete

// Delete will remove the entry
func (m *DeleteThreadModel) Delete() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("DeleteThreadModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	ps1, err := dbase.Prepare("UPDATE threads SET thread_deleted = ? WHERE thread_id = ? AND ib_id = ?")
	if err != nil {
		return
	}
	defer ps1.Close()

	_, err = ps1.Exec(!m.Deleted, m.ID, m.Ib)
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:28,代码来源:deletethread.go


示例6: PruneAnalytics

// PruneAnalytics will remove old entries from the analytics table
func PruneAnalytics() {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	_, err = dbase.Exec("DELETE FROM analytics WHERE request_time < (now() - interval 1 month)")
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:17,代码来源:cron.go


示例7: Status

// Status will return info
func (m *DeleteImageTagModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// Check if the tag is there
	err = dbase.QueryRow("SELECT tag_name FROM tags WHERE tag_id = ? AND ib_id = ? LIMIT 1", m.Tag, m.Ib).Scan(&m.Name)
	if err == sql.ErrNoRows {
		return e.ErrNotFound
	} else if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:20,代码来源:deleteimagetag.go


示例8: Status

// Status will return info
func (m *PurgePostModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// get thread ib and title
	err = dbase.QueryRow("SELECT thread_title FROM threads WHERE thread_id = ? AND ib_id = ? LIMIT 1", m.Thread, m.Ib).Scan(&m.Name)
	if err == sql.ErrNoRows {
		return e.ErrNotFound
	} else if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:20,代码来源:purgepost.go


示例9: Status

// Status will return info
func (m *PurgeThreadModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// Check if favorite is already there
	err = dbase.QueryRow("SELECT thread_title FROM threads WHERE thread_id = ? AND ib_id = ? LIMIT 1", m.ID, m.Ib).Scan(&m.Name)
	if err == sql.ErrNoRows {
		return e.ErrNotFound
	} else if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:20,代码来源:purgethread.go


示例10: Submit

// Submit will insert audit info into the audit log
func (m *Audit) Submit() (err error) {

	if !m.IsValid() {
		return errors.New("Audit not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	_, err = dbase.Exec("INSERT INTO audit (user_id,ib_id,audit_type,audit_ip,audit_time,audit_action,audit_info) VALUES (?,?,?,?,NOW(),?,?)",
		m.User, m.Ib, m.Type, m.IP, m.Action, m.Info)
	if err != nil {
		return
	}

	return
}
开发者ID:eirka,项目名称:eirka-libs,代码行数:21,代码来源:audit.go


示例11: IsAuthorized

// IsAuthorized will get the perms and role info from the userid
func (u *User) IsAuthorized(ib uint) bool {

	var err error

	if !u.IsValid() {
		return false
	}

	// check for invalid stuff
	if ib == 0 {
		return false
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return false
	}

	// holds our role
	var role uint

	// get data from users table
	err = dbase.QueryRow(`SELECT COALESCE((SELECT MAX(role_id) FROM user_ib_role_map WHERE user_ib_role_map.user_id = users.user_id AND ib_id = ?),user_role_map.role_id) as role
    FROM users
    INNER JOIN user_role_map ON (user_role_map.user_id = users.user_id)
    WHERE users.user_id = ?`, ib, u.ID).Scan(&role)
	if err != nil {
		return false
	}

	switch role {
	case 3:
		return true
	case 4:
		return true
	default:
		return false
	}

}
开发者ID:eirka,项目名称:eirka-libs,代码行数:42,代码来源:user.go


示例12: Password

// Password will get the password and name from the database for an instantiated user
func (u *User) Password() (err error) {

	// check user struct validity
	if !u.IsValid() {
		return e.ErrUserNotValid
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// get hashed password from database
	err = dbase.QueryRow("select user_name, user_password from users where user_id = ?", u.ID).Scan(&u.Name, &u.hash)
	if err != nil {
		return
	}

	return
}
开发者ID:eirka,项目名称:eirka-libs,代码行数:22,代码来源:user.go


示例13: Status

// Status will return info
func (m *BanIPModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// get thread ib and title
	err = dbase.QueryRow(`SELECT post_ip FROM threads
    INNER JOIN posts ON threads.thread_id = posts.thread_id
    WHERE ib_id = ? AND threads.thread_id = ? AND post_num = ? LIMIT 1`, m.Ib, m.Thread, m.ID).Scan(&m.IP)
	if err == sql.ErrNoRows {
		return e.ErrNotFound
	} else if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:22,代码来源:banip.go


示例14: Status

// Status will return info
func (m *DeletePostModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// get thread ib and title
	err = dbase.QueryRow(`SELECT thread_title, post_deleted FROM threads
	INNER JOIN posts on threads.thread_id = posts.thread_id
	WHERE threads.thread_id = ? AND ib_id = ? LIMIT 1`, m.Thread, m.Ib).Scan(&m.Name, &m.Deleted)
	if err == sql.ErrNoRows {
		return e.ErrNotFound
	} else if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:22,代码来源:deletepost.go


示例15: CheckDuplicate

// CheckDuplicate will check for duplicate name before registering
func CheckDuplicate(name string) (check bool) {

	// name cant be empty
	if len(name) == 0 {
		return true
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return true
	}

	// this will return true if there is a user
	err = dbase.QueryRow("select count(*) from users where user_name = ?", name).Scan(&check)
	if err != nil {
		return true
	}

	return

}
开发者ID:eirka,项目名称:eirka-libs,代码行数:23,代码来源:user.go


示例16: Post

// Post will add the ip to the table
func (m *BanIPModel) Post() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("BanIPModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	_, err = dbase.Exec("INSERT IGNORE INTO banned_ips (user_id,ib_id,ban_ip,ban_reason) VALUES (?,?,?,?)",
		m.User, m.Ib, m.IP, m.Reason)
	if err != nil {
		return
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:23,代码来源:banip.go


示例17: Status

// Status will return info
func (m *UpdateTagModel) Status() (err error) {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	var dupe bool

	// check if there is already a tag
	err = dbase.QueryRow("select count(*) from tags where tag_name = ? AND ib_id = ? AND NOT tag_id = ?", m.Tag, m.Ib, m.ID).Scan(&dupe)
	if err != nil {
		return
	}

	if dupe {
		return e.ErrDuplicateTag
	}

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:24,代码来源:updatetag.go


示例18: Delete

// Delete will remove the entry
func (m *PurgeThreadModel) Delete() (err error) {

	// check model validity
	if !m.IsValid() {
		return errors.New("PurgeThreadModel is not valid")
	}

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	images := []imageInfo{}

	// Get thread images
	rows, err := dbase.Query(`SELECT image_id,image_file,image_thumbnail FROM images
    INNER JOIN posts on images.post_id = posts.post_id
    INNER JOIN threads on threads.thread_id = posts.thread_id
    WHERE threads.thread_id = ? AND ib_id = ?`, m.ID, m.Ib)
	if err != nil {
		return
	}
	defer rows.Close()

	for rows.Next() {
		image := imageInfo{}

		err = rows.Scan(&image.ID, &image.File, &image.Thumb)
		if err != nil {
			return err
		}
		// Append rows to info struct
		images = append(images, image)
	}
	err = rows.Err()
	if err != nil {
		return
	}

	// delete thread from database
	ps1, err := dbase.Prepare("DELETE FROM threads WHERE thread_id= ? AND ib_id = ? LIMIT 1")
	if err != nil {
		return
	}
	defer ps1.Close()

	_, err = ps1.Exec(m.ID, m.Ib)
	if err != nil {
		return
	}

	// delete image files
	go func() {

		for _, image := range images {

			// filename must exist to prevent deleting the directory ;D
			if image.Thumb == "" {
				return
			}

			if image.File == "" {
				return
			}

			// delete from amazon s3
			s3 := amazon.New()

			s3.Delete(fmt.Sprintf("src/%s", image.File))
			if err != nil {
				return
			}

			s3.Delete(fmt.Sprintf("thumb/%s", image.Thumb))
			if err != nil {
				return
			}

			os.RemoveAll(filepath.Join(local.Settings.Directories.ImageDir, image.File))
			os.RemoveAll(filepath.Join(local.Settings.Directories.ThumbnailDir, image.Thumb))

		}

	}()

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:90,代码来源:purgethread.go


示例19: Get

// Get will gather the information from the database and return it as JSON serialized data
func (i *ModLogModel) Get() (err error) {

	if i.Ib == 0 || i.Page == 0 {
		return e.ErrNotFound
	}

	// Initialize response header
	response := ModLogType{}

	// to hold log entries
	entries := []Log{}

	// Initialize struct for pagination
	paged := u.PagedResponse{}
	// Set current page to parameter
	paged.CurrentPage = i.Page
	// Set threads per index page to config setting
	paged.PerPage = config.Settings.Limits.PostsPerPage

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		return
	}

	// Get total tag count and put it in pagination struct
	err = dbase.QueryRow("SELECT count(*) FROM audit WHERE ib_id = ? AND audit_type = 2", i.Ib).Scan(&paged.Total)
	if err != nil {
		return
	}

	// Calculate Limit and total Pages
	paged.Get()

	// Return 404 if page requested is larger than actual pages
	if i.Page > paged.Pages {
		return e.ErrNotFound
	}

	// get image counts from tagmap
	rows, err := dbase.Query(`SELECT audit.user_id,user_name,
    COALESCE((SELECT MAX(role_id) FROM user_ib_role_map WHERE user_ib_role_map.user_id = users.user_id AND ib_id = ?),user_role_map.role_id) as role,
    audit_time,audit_action,audit_info FROM audit
    INNER JOIN users ON audit.user_id = users.user_id
    INNER JOIN user_role_map ON (user_role_map.user_id = users.user_id)
    WHERE ib_id = ? AND audit_type = 2
    ORDER BY audit_id DESC LIMIT ?,?`, i.Ib, i.Ib, paged.Limit, paged.PerPage)
	if err != nil {
		return
	}

	for rows.Next() {
		// Initialize posts struct
		entry := Log{}
		// Scan rows and place column into struct
		err := rows.Scan(&entry.UID, &entry.Name, &entry.Group, &entry.Time, &entry.Action, &entry.Meta)
		if err != nil {
			return err
		}

		// Append rows to info struct
		entries = append(entries, entry)
	}
	if rows.Err() != nil {
		return
	}

	// Add threads slice to items interface
	paged.Items = entries

	// Add pagedresponse to the response struct
	response.Body = paged

	// This is the data we will serialize
	i.Result = response

	return

}
开发者ID:eirka,项目名称:eirka-admin,代码行数:80,代码来源:modlog.go


示例20: GetDatabaseSettings

// GetDatabaseSettings gets limits that are in the database
func GetDatabaseSettings() {

	// Get Database handle
	dbase, err := db.GetDb()
	if err != nil {
		panic(err)
	}

	ps, err := dbase.Prepare("SELECT settings_value FROM settings WHERE settings_key = ? LIMIT 1")
	if err != nil {
		panic(err)
	}
	defer ps.Close()

	err = ps.QueryRow("image_minwidth").Scan(&Settings.Limits.ImageMinWidth)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("image_minheight").Scan(&Settings.Limits.ImageMinHeight)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("image_maxwidth").Scan(&Settings.Limits.ImageMaxWidth)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("image_maxheight").Scan(&Settings.Limits.ImageMaxHeight)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("image_maxsize").Scan(&Settings.Limits.ImageMaxSize)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("webm_maxlength").Scan(&Settings.Limits.WebmMaxLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("thread_postsmax").Scan(&Settings.Limits.PostsMax)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("comment_maxlength").Scan(&Settings.Limits.CommentMaxLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("comment_minlength").Scan(&Settings.Limits.CommentMinLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("title_maxlength").Scan(&Settings.Limits.TitleMaxLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("title_minlength").Scan(&Settings.Limits.TitleMinLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("name_maxlength").Scan(&Settings.Limits.NameMaxLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("name_minlength").Scan(&Settings.Limits.NameMinLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("tag_maxlength").Scan(&Settings.Limits.TagMaxLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("tag_minlength").Scan(&Settings.Limits.TagMinLength)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("thumbnail_maxwidth").Scan(&Settings.Limits.ThumbnailMaxWidth)
	if err != nil {
		panic(err)
	}

	err = ps.QueryRow("thumbnail_maxheight").Scan(&Settings.Limits.ThumbnailMaxHeight)
	if err != nil {
		panic(err)
	}

//.........这里部分代码省略.........
开发者ID:eirka,项目名称:eirka-libs,代码行数:101,代码来源:queries.go



注:本文中的github.com/eirka/eirka-libs/db.GetDb函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Golang aws.String函数代码示例发布时间:2022-05-23
下一篇:
Golang audit.Audit类代码示例发布时间:2022-05-23
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap