debian

Golang在Debian中的数据库连接

小樊
37
2025-10-14 17:52:16
栏目: 编程语言

在Debian系统中,使用Golang连接数据库通常是通过第三方库来实现的。以下是一些常见的数据库及其对应的Golang驱动:

  1. MySQL:使用go-sql-driver/mysql库。首先,安装库:
go get -u github.com/go-sql-driver/mysql

然后,在你的Golang代码中,使用以下方式连接MySQL数据库:

package main

import (
	"database/sql"
	"fmt"
	_ "github.com/go-sql-driver/mysql"
)

func main() {
	dsn := "username:password@tcp(localhost:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local"
	db, err := sql.Open("mysql", dsn)
	if err != nil {
		panic(err)
	}
	defer db.Close()

	err = db.Ping()
	if err != nil {
		panic(err)
	}

	fmt.Println("Connected to the database!")
}
  1. PostgreSQL:使用pq库。首先,安装库:
go get -u github.com/lib/pq

然后,在你的Golang代码中,使用以下方式连接PostgreSQL数据库:

package main

import (
	"database/sql"
	"fmt"
	_ "github.com/lib/pq"
)

func main() {
	connStr := "user=username dbname=dbname password=password sslmode=disable"
	db, err := sql.Open("postgres", connStr)
	if err != nil {
		panic(err)
	}
	defer db.Close()

	err = db.Ping()
	if err != nil {
		panic(err)
	}

	fmt.Println("Connected to the database!")
}
  1. SQLite:使用modernc.org/sqlite库。首先,安装库:
go get -u modernc.org/sqlite

然后,在你的Golang代码中,使用以下方式连接SQLite数据库:

package main

import (
	"database/sql"
	"fmt"
	_ "modernc.org/sqlite"
)

func main() {
	db, err := sql.Open("sqlite3", "./test.db")
	if err != nil {
		panic(err)
	}
	defer db.Close()

	err = db.Ping()
	if err != nil {
		panic(err)
	}

	fmt.Println("Connected to the database!")
}

请根据你的需求选择合适的数据库驱动,并将上述示例代码中的连接信息替换为你的实际数据库连接信息。

0
看了该问题的人还看了