gin mysql网上商城_Gin访问和使用数据库

在使用gin框架进行开发项目时,会使用到数据库进行数据存储。本节课我们来学习如何使用gin框架链接和操作数据库。

### MySQL数据库的安装

在使用MySQL数据库之前,首先要安装MySQL数据库。

MySQL官方下载链接:[https://dev.mysql.com/downloads/mysql/](https://dev.mysql.com/downloads/mysql/)

国内镜像下载链接:[http://mirrors.sohu.com/](http://mirrors.sohu.com/)在国内镜像列表中,有windows,macOS,linux全部的版本。可以自行选择下载。

### Gin链接和使用MySQL数据库

* 1、安装MySQL驱动

想要在Gin中操作MySQL,首先要有MySQL驱动程序。该驱动程序需要下载:

```

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

```

* 2、创建数据库

在已经安装好的MySQL数据库中,创建一个新的数据库,如:ginsql。

在终端下登录mysql数据库,并创建ginsql数据库,具体命令如下:

```

mysql -uroot -p

create database ginsql;

```

使用第一条命令进行登录,需要输入密码。

使用create database ginsql即可创建一个名字为ginsql的新的数据库。

* 3、在gin中使用编程语言进行连接数据库

在gin中连接和操作mysql与在其他框架中连接操作mysql没有什么区别,分为主要的几个步骤:

* a、引入mysql驱动程序:使用import将mysql驱动默认引入,具体语法如下:

```

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

```

* b、拼接链接字符:在程序中链接mysql,需要按照一定的规则进行用户名,密码等信息的组合。

```

connStr := "root:12345678@tcp(127.0.0.1:3306)/ginsql"

```

* c、使用sql.Open创建数据库连接

```

db, err := sql.Open("mysql", connStr)

if err != nil {

log.Fatal(err.Error())

return

}

```

* 4、操作数据库

正确创建了数据库链接后,可以执行db对象支持的相关数据库操作,比如:创建表结构,查询数据,插入数据,删除操作等。举例如下:

* a、 创建数据库表

```

_, err = db.Exec("create table person(" +

"id int auto_increment primary key," +

"name varchar(12) not null," +

"age int default 1" +

");")

if err != nil {

log.Fatal(err.Error())

return

}

```

* b、向数据库中插入数据

```

_, err = db.Exec("insert into person(name,age) "+

"values(?,?);", "Lily", 15)

if err != nil {

log.Fatal(err.Error())

return

} else {

fmt.Println("数据插入成功")

}

```

* c、查询数据库记录

```

rows, err := db.Query("select id,name,age from person")

if err != nil {

log.Fatal(err.Error())

return

}

scan:

if rows.Next() {

//columns, err := rows.Columns()

//fmt.Println(columns)

person := new(Person)

err = rows.Scan(&person.Id, &person.Name, &person.Age)

if err != nil {

log.Fatal(err.Error())

return

}

fmt.Println(person.Id, person.Name, person.Age)

goto scan

}

```

附:

课程全部文档均可以在千锋教育Go语言day100学习库获取,学习库链接:[Golang 100天从新手到大师](https://github.com/rubyhan1314/Golang-100-Days)

视频教程可以访问B站主页进行学习:[B站](https://space.bilibili.com/408228716)

Go语言课程专题学习网站:[Go语言专题学习](https://www.qfgolang.com/)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值