Go 標準ライブラリ データベース/SQL パッケージを通じて、MySQL、PostgreSQL、SQLite などのリモート データベースに接続できます。データベース接続情報を含む接続文字列を作成します。 sql.Open() 関数を使用してデータベース接続を開きます。 SQL クエリや挿入操作などのデータベース操作を実行します。 defer を使用してデータベース接続を閉じ、リソースを解放します。
Golang を使用してリモート データベースに接続する方法
Golang は、リモート データベースに簡単に接続できる強力なプログラミング言語です。このチュートリアルでは、Go 標準ライブラリ database/sql
パッケージを使用して、MySQL、PostgreSQL、SQLite などのリモート データベースに接続する方法を紹介します。 database/sql
包连接到 MySQL、PostgreSQL 和 SQLite 等远程数据库。
首先,我们需要创建一个连接字符串,该字符串包含连接到数据库所需的信息。以下是如何创建不同数据库的连接字符串:
MySQL:
"user:password@tcp(host:port)/dbname"
PostgreSQL:
"user=username password=password host=address port=port dbname=database"
SQLite:
"path/to/sqlite.db"
其中,user
、password
、host
、port
和 dbname
是特定于数据库的。
使用 database/sql
import ( "database/sql" _ "github.com/go-sql-driver/mysql" // Import MySQL driver _ "github.com/lib/pq" // Import PostgreSQL driver _ "github.com/mattn/go-sqlite3" // Import SQLite driver ) func main() { // Create a connection string connStr := "user:password@tcp(host:port)/dbname" // Open the database connection db, err := sql.Open("mysql", connStr) if err != nil { panic(err) } defer db.Close() // Close the connection when the function returns }🎜🎜PostgreSQL: 🎜🎜
package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" // Import MySQL driver ) func main() { // Connect to the database db, err := sql.Open("mysql", "root:@/test") if err != nil { panic(err) } defer db.Close() // Close the connection when the function returns // Create a table query := `CREATE TABLE IF NOT EXISTS users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL );` _, err = db.Exec(query) if err != nil { panic(err) } // Insert a record into the table query = `INSERT INTO users (username, password) VALUES (?, ?)` stmt, err := db.Prepare(query) if err != nil { panic(err) } _, err = stmt.Exec("admin", "password") if err != nil { panic(err) } // Retrieve the record from the table query = `SELECT * FROM users WHERE id = ?` var id int var username string var password string err = db.QueryRow(query, 1).Scan(&id, &username, &password) if err != nil { panic(err) } fmt.Println("ID:", id, "Username:", username, "Password:", password) }🎜🎜SQLite: 🎜🎜rrreee🎜Where,
user
, password / code>、<code>host
、port
、および dbname
はデータベース固有です。 🎜🎜データベースに接続します🎜🎜 database/sql
パッケージを使用してデータベースに接続します: 🎜rrreee🎜実用的なケース🎜🎜 以下は、MySQL データベースを使用した簡単な例です:🎜rrreee以上がGolangを使用してリモートデータベースに接続するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。