找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 303|回复: 0

Go读取Mysql数据

[复制链接]

28

主题

1

回帖

148

积分

管理员

积分
148
发表于 2024-8-20 09:45:42 | 显示全部楼层 |阅读模式



2019-05-12

Go读取Mysql数据 (minirplus.com)


Go读取Mysql数据
最近在测试将frp验证与SSRPanel数据库进行结合,其中有一个主要的核心功能就是从SSRPanel数据库中读取用户列表,frp基于Go,所以需要验证如何在Go中使用mysql接口。
环境
创建测试项目
  1. mkdir -p work/src/my_project/testMysql
复制代码
创建测试文件
  1. nano ~/work/src/my_project/testMysql/testMysql.go
复制代码
testMysql.go
  1. package main

  2. import (
  3.         "database/sql"
  4.         "fmt"
  5.         _ "github.com/go-sql-driver/mysql"
  6. )

  7. func main() {
  8.         db, err := sql.Open("mysql", "user:password@/ssrpanel")
  9.         if err != nil {
  10.                 panic(err.Error())  // Just for example purpose. You should use proper error handling instead of panic
  11.         }
  12.         defer db.Close()

  13.         // Prepare statement for reading data
  14.         stmtOut, err := db.Prepare("SELECT port FROM user WHERE id = ?")
  15.         if err != nil {
  16.                 panic(err.Error()) // proper error handling instead of panic in your app
  17.         }
  18.         defer stmtOut.Close()

  19.         var squareNum int // we "scan" the result in here

  20.         // Query the port-number of user id = 4
  21.         err = stmtOut.QueryRow(4).Scan(&squareNum) // WHERE id = 4
  22.         if err != nil {
  23.                 panic(err.Error()) // proper error handling instead of panic in your app
  24.         }
  25.         fmt.Printf("The port number of 4 is: %d", squareNum)
  26. }
复制代码
加载外部参照

  1. go get -u github.com/go-sql-driver/mysql
复制代码
编译项目

  1. go install my_project/testMysql
复制代码
运行

  1. testMysql
复制代码
返回

  1. The port number of 4 is: 17643
复制代码

测试成功!

Know  More
https://github.com/go-sql-driver/mysql
https://github.com/go-sql-driver/mysql/wiki/Examples


2019-05-12

Go读取Mysql数据 (minirplus.com)

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|整天BBB

GMT+8, 2025-1-10 19:19 , Processed in 0.070561 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表