自学内容网 自学内容网

go 实现操作mysql并且防止sql注入

在最近使用go语言的同学,大家有没有操作数据库的时候遇到过sql注入的问题,sql注入会把数据库搞崩,或者是把数据库的数据全部查出造成不必要的随时,今天小程同学就给大家带来一个go中防sql注入的最好例子,大家不要忘了点赞关注呦

package main

import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
"log"
)

func main() {
//args := os.Args
//pre_name := args[1]
//
mysqlDb := getMysqlConn()
defer mysqlDb.Close()
getProjectAll(mysqlDb, "3432")
}

func getMysqlConn() *sql.DB {
mysqlConfig := "rich:rich@1009@tcp(47.95.149.89:13306)/oms_epg"
mysqlDb, err := sql.Open("mysql", mysqlConfig)
if err != nil {
log.Fatal("连接mysql失败", err)
return nil
}
return mysqlDb
}

func getProjectAll(mysqlDb *sql.DB, preFix string) {

stmt, err := mysqlDb.Prepare("select pre_fix, show_name from partner where pre_fix=?")
if err != nil {
log.Fatal(err)
return
}
defer stmt.Close()
rows, err := stmt.Query("sd_ctcc_iptv")
for rows.Next() {
var pre_fix string
var show_name string
if err := rows.Scan(&pre_fix, &show_name); err != nil {
log.Fatal(err)
}
fmt.Printf("Username: %s, Password: %s\n", pre_fix, show_name)
}

}

type project struct {
pre_fix   string
show_name string
}


原文地址:https://blog.csdn.net/qq_43022682/article/details/142380166

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!