golang学习---练习2

第 0002 题:将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。


  1. 创建优惠券表
mysql> create table promotion_code (
    -> promotion_code varchar(255),
    -> used bool,
    -> );
  1. 生成优惠码(golang学习---练习1)
  2. 将生成的优惠码存入,mysql
package main
import (
    "database/sql"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
    "log"
    "time"
    "math/rand"
    "encoding/base64"
)

func main() {

    codes := generate_code()
    fmt.Println(codes)
    db, err := sql.Open("mysql", "mysql:123456@/gotest?charset=utf8")
    defer db.Close()
    if err != nil {
        log.Fatal(err)
    }

    for _, code := range codes  {
        stmt, err := db.Prepare("insert into promotion_code (promotion_code, used) values (?, ?)")
        if err != nil {
            log.Fatal(err)
        }

        _, err = stmt.Exec(code, false)
        if err != nil {
            log.Println(err)
        }
    }


}
/*
生成优惠码
*/
func generate_code() []string {
    var codes []string
    for i := 0; i < 200; i++ {
        //
        randNum := rand.Int()
        //获取纳秒
        t := time.Now().UnixNano()
        result := fmt.Sprint(randNum) + fmt.Sprint(t)
        encoded := base64.StdEncoding.EncodeToString([]byte(result))
        codes = append(codes, encoded)
    }
    return codes
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,557评论 18 399
  • CREATE TABLE IF NOT EXISTS ecs_order_info (order_id mediu...
    cookie口阅读 16,010评论 0 16
  • 一、分析商城实体有哪些:1.用户:通过需要注册和登录,得到必须有用户2.商品:所有展示的商品3.订单:用户选择商品...
    字节码阅读 9,917评论 2 10
  • 一. Java基础部分.................................................
    wy_sure阅读 9,287评论 0 11
  • 有时候,拿起铅笔写个字就勾起了我童年的回忆。坐在破烂的教室里,趴在桌面有几个洞的书桌上写字,这种感觉是那么的逼真,...
    2ren1yu阅读 3,685评论 0 0

友情链接更多精彩内容