該教程通過使用go-sql-driver/mysql
驅動程序將Golang Projects連接到MySQL數(shù)據(jù)庫。我們將介紹驅動程序安裝,數(shù)據(jù)庫連接和基本數(shù)據(jù)庫操作,并提供實際示例。
先決條件:確保安裝和運行MySQL。通過在您的終端中執(zhí)行mysql --version
來驗證這一點。輸出應顯示您的MySQL版本。
安裝GO MySQL驅動程序:
使用以下方式安裝必要的驅動程序:
go get -u github.com/go-sql-driver/mysql
盡管存在其他駕駛員,但這是一個受歡迎且維護良好的選擇。有關詳細信息,請參閱其GitHub頁面。
項目設置:
創(chuàng)建您的Golang項目目錄。如果在您的GO安裝目錄中不起作用,請使用這些命令來初始化GO模塊:
go mod init test-sql
go mod tidy
這會生成go.mod
and go.sum
文件,對于管理依賴項至關重要。
連接到mysql:
創(chuàng)建一個main.go
文件并添加以下代碼:
包裝主 進口 ( “數(shù)據(jù)庫/SQL” “ FMT” _“ github.com/go-sql-driver/mysql” ) func main(){ db,err:= sql.open(“ mysql”,“ root:<your_mysql_password> @TCP(127.0.0.1:3306)/test”) 如果err!= nil { 恐慌(err.Error()) } defer db.close() fmt.println(“成功連接到mysql!”) }</your_mysql_password>
記住要替換<your_mysql_password></your_mysql_password>
使用您的實際MySQL數(shù)據(jù)庫密碼。我們建議使用密碼管理器進行安全存儲。
使用代碼編輯器(例如Coderunner)編寫并運行此代碼。保存后,導航到終端中的項目目錄并運行:
go run main.go
一個“成功連接到mysql!”消息確認了成功的連接。
創(chuàng)建一個MySQL數(shù)據(jù)庫:
對于本教程,我們將使用諸如TablePlus之類的數(shù)據(jù)庫管理工具來創(chuàng)建數(shù)據(jù)庫(例如“ 123Begin”)和表(例如“ TestTable2”)。將以下示例調(diào)整為您的特定數(shù)據(jù)庫和表名稱。
數(shù)據(jù)庫操作:
插入數(shù)據(jù):
此代碼將數(shù)據(jù)插入表格:
包裝主 進口 ( “數(shù)據(jù)庫/SQL” “ FMT” _“ github.com/go-sql-driver/mysql” ) func main(){ db,err:= sql.open(“ mysql”,“ root:<your_mysql_password> @tcp(127.0.0.1:3306)/123Begin”) 如果err!= nil { 恐慌(err.Error()) } defer db.close() 插入,err:= db.query(“插入testtable2 values('23')”) 如果err!= nil { 恐慌(err.Error()) } defer insert.close() fmt.println(“數(shù)據(jù)成功插入!”) }</your_mysql_password>
運行go run main.go
執(zhí)行插入。
查詢數(shù)據(jù):
此代碼從您的表中檢索數(shù)據(jù):
包裝主 進口 ( “數(shù)據(jù)庫/SQL” “ FMT” _“ github.com/go-sql-driver/mysql” ) 類型testtable2 struct { id int json:“ id”` } func main(){ db,err:= sql.open(“ mysql”,“ root:<your_mysql_password> @tcp(127.0.0.1:3306)/123Begin”) 如果err!= nil { 恐慌(err.Error()) } defer db.close() 結果,err:= db.query(“從testtable2中選擇ID”) 如果err!= nil { 恐慌(err.Error()) } defer結果。close() for actust.next(){ var testtable2 testtable2 err = results.scan(&testtable2.id) 如果err!= nil { 恐慌(err.Error()) } fmt.println(testtable2.id) } }</your_mysql_password>
運行go run main.go
執(zhí)行查詢。輸出應顯示插入的數(shù)據(jù)。
故障排除:
-
錯誤目錄:確保您正在運行
go run main.go
。使用cd
導航。 -
缺少
go.mod
/go.sum
:如果丟失了這些文件,請重新運行go mod init
并go mod tidy
命令。 - MySQL錯誤:請咨詢MySQL的官方文檔以解決錯誤。
該增強的教程為將Golang連接到MySQL提供了更清晰,更簡潔,分步的指南。請記住,用您的實際憑據(jù)和數(shù)據(jù)庫信息替換占位符值。使用CodeRunner,TablePlus,SnippetSlab和Secrets等工具可以簡化您的工作流程。
以上是如何與mysql一起使用golang的詳細內(nèi)容。更多信息請關注PHP中文網(wǎng)其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

如果您多年來擁有多個Apple設備,您可能會發(fā)現(xiàn)自己處于某些較舊的Mac,iPhone,iPad或其他Apple硬件的情況下,已出售,贈送或交易。無論他們?nèi)绾坞x開您的財產(chǎn),都是

Fortnite再次適用于iPhone和iPad用戶,為許多游戲玩家?guī)須g樂。但是,Mac仍然沒有官方版本(至少尚未)。盡管如此,Apple Silicon Mac所有者并沒有完全不運氣 - 您可以運行iOS/I

iCloud私人繼電器是iCloud訂閱中包含的一項出色的隱私功能,旨在通過掩蓋IP地址(使用臨時的)和加密DNS查找來保護您的在線活動和瀏覽。這阻止了第三名

MacOS紅杉是一個堅實的操作系統(tǒng),它帶來了一些令人印象深刻的功能,例如iPhone鏡像,盡管性能對許多用戶來說是出色的,但并非每個人都具有相同的速度水平。如果您發(fā)現(xiàn)MacOS紅杉比PRE

如果您經(jīng)常使用iMessage,那么您可能會在聊天中共享許多網(wǎng)絡鏈接 - 也許是文章,視頻,推文,歌曲或其他任何內(nèi)容。以后找到這些鏈接可能會令人沮喪,但是值得慶幸的是,有一個更簡單的方法

熟悉命令行的高級MAC用戶可以使用TART進入終端中的幾個命令來迅速設置MacOS Tahoe 26 beta虛擬機。 TART是用于管理虛擬機并提供Quicke之一的命令行實用程序

Windowserver是什么,為什么重要的Windowserver是一個核心MacOS進程,它可以管理應用程序和Windows在屏幕上顯示的方式。它處理GUI渲染,控制內(nèi)部和外部顯示,并啟用所有VIS

盡管Apple剛剛為所有用戶提供了iOS 15.2.1和iPados 15.2.1,但他們還推出了第二個iOS 15.3和iPados的beta,并為參加Apple的Mobile Aptim Systems的Beta Beta測試程序。
