如何在 Go 语言中使用 MySQL

MySQL 是一个基于结构化查询语言(SQL)的开源关系型数据库管理系统。作为一种关系型数据库,它将数据组织到一个或多个相互关联的表中。

数据库驱动:

数据库驱动实现了数据库连接的协议。我们可以将驱动比作一个适配器,它将通用接口连接到特定的数据库。

初始设置:

首先启动 MySQL 服务器,并使用以下命令安装 Go 的 MySQL 驱动。

go get -u github.com/go-sql-driver/mysql

创建数据库对象:

让我们使用 sql.Open 来创建一个数据库对象。注意,此时并没有与 MySQL 建立实质性的连接,它仅仅是创建了一个可供后续使用的数据库对象。

db, err := sql.Open("mysql", ":@tcp(127.0.0.1:3306)/")

如果您没有使用 MySQL 的默认端口,请将 3306 替换为相应的端口号。

Go


CODEBLOCK_0a17c3b0

输出:

!image图 1.1

执行数据库查询:

我们可以使用 INLINECODEd7524146 和 INLINECODE1854c072 来执行数据库查询。

1. 使用 SQL 查询和 Exec() 创建数据库表。

Go


CODEBLOCK_289ab6b5

输出:

!image

2.Query() 中使用 SQL 查询向数据库表插入一行数据。

Go


CODEBLOCK_d6cf5a20

输出:

!image

3.Query() 中使用 SQL 查询返回用户表中的所有行。

Go


package main

import (

"database/sql"

"fmt"

_ "github.com/go-sql-driver/mysql"

)

func main() {

// 创建一个数据库对象,

// 用于后续与数据库建立连接。

db, err := sql.Open("mysql", "root:passwd@tcp(0.0.0.0:3306)/user")

// 处理可能出现的错误。

if err != nil {

panic(err)

}

// 这里使用 SQL 查询返回

// user 表中的所有数据。

result, err := db.Query("SELECT * FROM user")

// 处理错误

if err != nil {

panic(err)

}

// result 对象有一个名为 Next 的方法,

// 用于遍历所有返回的行。

for result.Next() {

var id int

va

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/32972.html
点赞
0.00 平均评分 (0% 分数) - 0