ホームページ > バックエンド開発 > Golang > データベース相互作用に最適な Go MySQL ドライバーを選択して使用するにはどうすればよいですか?

データベース相互作用に最適な Go MySQL ドライバーを選択して使用するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-18 17:52:14
オリジナル
908 人が閲覧しました

How to Choose and Use the Best Go MySQL Driver for Database Interaction?

Go から MySQL への接続: 総合ガイド

Go アプリケーションから MySQL データベースにアクセスする場合は、信頼性が高く、適切なデータベースを選択することが重要です。整備されたドライバー。データベース/SQL API は、さまざまなドライバー間で標準化されたインターフェイスを提供し、ドライバー間の切り替えを容易にします。

推奨ドライバー

から MySQL に接続するための 2 つの高く評価されたドライバー次の場所に移動します:

  • MyMySQL (github.com/ziutek/mymysql/godrv): このドライバーは高速で、大量の接続を効果的に処理します。
  • Go-MySQL-Driver (github.com/go-sql-driver) /mysql): 速度と信頼性でも知られているこのドライバーのコードベースは、 MyMySQL.

ドライバーのインポート

選択したドライバーをインポートするには、Go ファイルに次のコードを含めます:

import (
    "database/sql"
    _ "github.com/ziutek/mymysql/godrv" // For MyMySQL
    // or
    _ "github.com/go-sql-driver/mysql" // For Go-MySQL-Driver
)
ログイン後にコピー

接続と切断

MyMySQL の使用:

con, err := sql.Open("mymysql", database+"/"+user+"/"+password)
defer con.Close()
ログイン後にコピー

Go-MySQL-Driver の使用:

con, err := sql.Open("mysql", store.user+":"+store.password+"@/"+store.database)
defer con.Close()
ログイン後にコピー

基本的な CRUD操作

単一の行の選択:

row := con.QueryRow("select mdpr, x, y, z from sometable where>
ログイン後にコピー

複数の行の選択:

rows, err := con.Query("select a, b from item where p1=? and p2=?", p1, p2)
if err != nil { /* error handling */}
items := make([]*SomeStruct, 0, 10)
var ida, idb uint
for rows.Next() {
    err = rows.Scan(&ida, &idb)
    if err != nil { /* error handling */}
    items = append(items, &SomeStruct{ida, idb})
}
ログイン後にコピー

行:

_, err = con.Exec("insert into tbl (id, mdpr, isok) values (?, ?, 1)", id, mdpr)
ログイン後にコピー

Go の MySQL ドライバーは、MySQL データベースと対話するための豊富で効率的な API を提供します。データベース/SQL パッケージを利用すると、特定のドライバーの実装を抽象化し、コードの変更を簡素化し、アプリケーションの柔軟性を高めることができます。

以上がデータベース相互作用に最適な Go MySQL ドライバーを選択して使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート