溫馨提示×

sql package支持哪些數(shù)據(jù)庫類型

sql
小樊
84
2024-09-10 13:51:13
欄目: 云計算

sql 包在 Go 語言的標準庫中,它提供了一個通用的接口來與多種關系型數(shù)據(jù)庫進行交互。Go 語言的 database/sql 包支持多種數(shù)據(jù)庫類型,以下是一些常見的數(shù)據(jù)庫及其對應的驅(qū)動程序:

  1. MySQL: 要連接到 MySQL 數(shù)據(jù)庫,可以使用 go-sql-driver/mysql 驅(qū)動。
import (
    "database/sql"
    _ "github.com/go-sql-driver/mysql"
)

func main() {
    db, err := sql.Open("mysql", "user:password@tcp(host:port)/dbname")
}
  1. PostgreSQL: 要連接到 PostgreSQL 數(shù)據(jù)庫,可以使用 lib/pq 驅(qū)動。
import (
    "database/sql"
    _ "github.com/lib/pq"
)

func main() {
    db, err := sql.Open("postgres", "user=username password=password dbname=dbname sslmode=disable host=host port=port")
}
  1. SQLite: 要連接到 SQLite 數(shù)據(jù)庫,可以使用 mattn/go-sqlite3 驅(qū)動。
import (
    "database/sql"
    _ "github.com/mattn/go-sqlite3"
)

func main() {
    db, err := sql.Open("sqlite3", "file:test.db?cache=shared&mode=memory")
}
  1. Microsoft SQL Server: 要連接到 Microsoft SQL Server 數(shù)據(jù)庫,可以使用 denisenkom/go-mssqldb 驅(qū)動。
import (
    "database/sql"
    _ "github.com/denisenkom/go-mssqldb"
)

func main() {
    db, err := sql.Open("sqlserver", "sqlserver://username:password@host:port?database=dbname")
}
  1. Oracle Database: 要連接到 Oracle Database,可以使用 godror/godror 驅(qū)動。
import (
    "database/sql"
    _ "github.com/godror/godror"
)

func main() {
    db, err := sql.Open("godror", "user/password@host:port/sid")
}

這只是一些常見的數(shù)據(jù)庫類型及其驅(qū)動程序。實際上,database/sql 包支持任何遵循其接口的數(shù)據(jù)庫驅(qū)動程序。只需導入相應的驅(qū)動程序包,并使用 sql.Open() 函數(shù)連接到數(shù)據(jù)庫即可。

0