Go 言語における SQL の基本概念と使用法分析
SQL (Structured Query Language) は、リレーショナル データベースの管理と操作に特に使用される言語です。 Go 言語では、通常 SQL を使用して、データのクエリ、データの挿入、データの更新、データの削除などのデータベース操作を実行します。この記事では、Go 言語における SQL の基本概念と使用法を、具体的なコード例とともに紹介します。
Go 言語では、サードパーティのライブラリを使用してデータベースに接続できます。一般的に使用されるライブラリには、database/sql
と各種データベースドライバーです。まず、データベース ドライバーをインポートする必要があります。たとえば、MySQL データベースに接続する github.com/go-sql-driver/mysql
をインポートします。
import ( "database/sql" _ "github.com/go-sql-driver/mysql" )
その後、次のことができます。 sql.Open
関数を渡してデータベースに接続する場合のサンプル コードは次のとおりです:
db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/mydatabase") if err != nil { panic(err.Error()) } defer db.Close()
一般的に、## を使用できます。クエリ操作を実行する #Query 関数、サンプル コードは次のとおりです:
rows, err := db.Query("SELECT * FROM users") if err != nil { panic(err.Error()) } defer rows.Close() for rows.Next() { var id int var name string if err := rows.Scan(&id, &name); err != nil { panic(err.Error()) } fmt.Println(id, name) }
Exec を使用できます。 関数. サンプル コードは次のとおりです:
stmt, err := db.Prepare("INSERT INTO users(name) VALUES(?)") if err != nil { panic(err.Error()) } defer stmt.Close() result, err := stmt.Exec("Alice") if err != nil { panic(err.Error()) } id, _ := result.LastInsertId() fmt.Println("Inserted ID:", id)
stmt, err := db.Prepare("UPDATE users SET name = ? WHERE id = ?") if err != nil { panic(err.Error()) } defer stmt.Close() result, err := stmt.Exec("Bob", 1) if err != nil { panic(err.Error()) } rowsAffected, _ := result.RowsAffected() fmt.Println("Rows affected:", rowsAffected)
stmt, err := db.Prepare("DELETE FROM users WHERE id = ?") if err != nil { panic(err.Error()) } defer stmt.Close() result, err := stmt.Exec(1) if err != nil { panic(err.Error()) } rowsAffected, _ := result.RowsAffected() fmt.Println("Rows affected:", rowsAffected)
以上がGo 言語における SQL の基本概念と使用分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。