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 중국어 웹사이트의 기타 관련 기사를 참조하세요!