首頁 後端開發 Golang golang sqlx捕捉錯誤

golang sqlx捕捉錯誤

Dec 14, 2019 am 11:57 AM
golang

golang sqlx捕捉錯誤

sqlx這個第三方函式庫,用起來確實爽多了,這裡記錄下學習和用法的心得

安裝:

使用指令即可                          (建議學習:go

go get github.com/jmoiron/sqlx
登入後複製

# 介紹:簡介時:#d ##大意就是sqlx是golang 標準database/sql的擴展,使用sqlx的介面跟原先的介面方法沒什麼兩樣,但有以下擴展:

1.可將行記錄對應如struct(內嵌struct也支援),map與slices          <--這正是我之前想要的效果

2.支援在preprared statement 中使用命名參數,在內建database/sql包之上增加了很多擴展,簡化資料庫操作程式碼的書寫。

3.Get 和Select的查詢結果到struct/slice更快速

sqlx也增加了許多接口,方便開發者使用,後面會講到。

package main
 
import (
	&quot;database/sql&quot;
	_&quot;github.com/go-sql-driver/mysql&quot;
	&quot;github.com/jmoiron/sqlx&quot;
	&quot;log&quot;
	&quot;fmt&quot;
)
 
type Student struct {
	Id         int    `db:&quot;id&quot;`
	Name       string `db:&quot;name&quot;`
	Nick       string `db:&quot;nick&quot;`
	Country    string `db:&quot;country&quot;`
	Province   string `db:&quot;province&quot;`
	City       string `db:&quot;city&quot;`
	ImgUrl     string `db:&quot;img_url&quot;`
	Status     int    `db:&quot;status&quot;`
	CreateTime string `db:&quot;create_time&quot;`
}
 
func main()  {
	dns := fmt.Sprintf(&quot;%s:%s@tcp(%s)/%s?charset=utf8&quot;, dbuser, dbpwd, dbhost, dbname)
	db, err := sqlx.Connect(&quot;mysql&quot;, dns)
	if err != nil {
        log.Fatalln(err)
	}
	defer db.Close()
 
	tx := db.MustBegin()
	tx.MustExec(`INSERT INTO student VALUES (&#39;1&#39;, &#39;Jack&#39;, &#39;Jack&#39;, &#39;England&#39;, &#39;&#39;, &#39;&#39;, &#39;http://img2.imgtn.bdimg.com/it/u=3588772980,2454248748&amp;fm=27&amp;gp=0.jpg&#39;, &#39;1&#39;, &#39;2018-06-26 17:08:35&#39;);`)
	tx.MustExec(`INSERT INTO student VALUES (&#39;2&#39;, &#39;Emily&#39;, &#39;Emily&#39;, &#39;England&#39;, &#39;&#39;, &#39;&#39;, &#39;http://img2.imgtn.bdimg.com/it/u=3588772980,2454248748&amp;fm=27&amp;gp=0.jpg&#39;, &#39;2&#39;, null);`)
	err = tx.Commit()
	if err != nil {
		log.Fatalln(err)
	}
 
}
登入後複製

以上是golang sqlx捕捉錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何使用 Golang 安全地讀取和寫入檔案? 如何使用 Golang 安全地讀取和寫入檔案? Jun 06, 2024 pm 05:14 PM

如何使用 Golang 安全地讀取和寫入檔案?

如何為 Golang 資料庫連線配置連線池? 如何為 Golang 資料庫連線配置連線池? Jun 06, 2024 am 11:21 AM

如何為 Golang 資料庫連線配置連線池?

Golang 與 C++ 的異同 Golang 與 C++ 的異同 Jun 05, 2024 pm 06:12 PM

Golang 與 C++ 的異同

golang框架架構的學習曲線有多陡峭? golang框架架構的學習曲線有多陡峭? Jun 05, 2024 pm 06:59 PM

golang框架架構的學習曲線有多陡峭?

如何在 Golang 中從列表中產生隨機元素? 如何在 Golang 中從列表中產生隨機元素? Jun 05, 2024 pm 04:28 PM

如何在 Golang 中從列表中產生隨機元素?

golang框架的優缺點比較 golang框架的優缺點比較 Jun 05, 2024 pm 09:32 PM

golang框架的優缺點比較

Golang 框架中的錯誤處理最佳實務有哪些? Golang 框架中的錯誤處理最佳實務有哪些? Jun 05, 2024 pm 10:39 PM

Golang 框架中的錯誤處理最佳實務有哪些?

golang框架文件使用說明 golang框架文件使用說明 Jun 05, 2024 pm 06:04 PM

golang框架文件使用說明

See all articles