package main
import (
"fmt"
"gorm.io/driver/mysql"
"gorm.io/gorm"
)
func main(){
dsn:="root:abc123456@tcp(127.0.0.1:3306)/aaa?charset=utf8mb4&parseTime=True&loc=Local"
_,err:=gorm.Open(mysql.Open(dsn),&gorm.Config{})//尝试链接mysql数据库
if err!=nil{
panic(err)
}
fmt.Println("连接成功...")
}
root:abc123456:这部分是 MySQL 数据库的用户名和密码,root 是用户名,abc123456 是密码。根据你的数据库设置,请将这里的用户名和密码替换为你实际的用户名和密码。
@tcp(127.0.0.1:3306):这部分指定了数据库的网络地址和端口号。tcp 表示使用 TCP/IP 协议进行连接,127.0.0.1 是 MySQL 服务器的 IP 地址,3306 是 MySQL 服务器的端口号。通常,127.0.0.1 是指本地主机,所以这里表示连接到本地的 MySQL 服务器。
/aaa:这部分是数据库的名称或者说是数据库的 schema 名称。在这里,数据库名称是 aaa。你可以将 aaa 替换为你实际的数据库名称。
?charset=utf8mb4&parseTime=True&loc=Local:这部分是连接选项,用于指定连接的一些参数。在这里,charset=utf8mb4 指定了使用 UTF-8 编码字符集,parseTime=True 指定了将数据库中的时间字段解析为 Go 的 time.Time 类型,loc=Local 指定了使用本地时区。这些选项可以根据你的需求进行调整。
gorm.Open() 是 GORM(Go的一个ORM库)提供的函数,用于打开一个数据库连接。它接受两个参数:第一个参数是数据库驱动程序,第二个参数是一个 *gorm.Config 类型的指针,用于配置数据库连接的行为。
mysql.Open(dsn) 是指定了使用 MySQL 数据库驱动程序,并传入了前面定义的 dsn 字符串作为连接信息。这里使用的是 gorm.io/driver/mysql 包提供的 MySQL 驱动程序。
&gorm.Config{} 是创建了一个空的 gorm.Config 类型的结构体,并取其地址。这个结构体用于配置数据库连接的行为,但在这里是使用默认配置,所以是一个空的结构体。
_ 是一个占位符,表示忽略这个变量。在 Go 中,如果一个变量被声明但没有被使用,会导致编译错误,使用 _ 可以忽略这个变量而避免编译错误。
err 是用于接收 gorm.Open() 函数的返回值,即连接数据库过程中可能发生的错误。如果连接成功,err 将为 nil;如果发生错误,err 将会包含一个错误对象,可以根据这个错误对象进行错误处理。