首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Go语言操作mysql数据库简单例子

Go语言操作mysql数据库简单例子

作者头像
李海彬
发布2018-03-23 15:17:04
3.6K0
发布2018-03-23 15:17:04
举报
文章被收录于专栏:Golang语言社区Golang语言社区

Go语言操作数据库非常的简单, 他也有一个类似JDBC的东西"database/sql" 实现类是"github.com/go-sql-driver/mysql" 使用过JDBC的人应该一看就懂

对日期的处理比较晦涩,没有JAVA流畅:


package main
import (
    "database/sql"
    _ "github.com/go-sql-driver/mysql"
    "log"
    "time"
)
/*
    create table t(
        id int primary key auto_increment,
        name varchar(20) not null,
        ts timestamp
    );
*/
func insert(db *sql.DB) {
    stmt, err := db.Prepare("insert into t(name,ts) values(?,?)")
    defer stmt.Close()
    if err != nil {
        log.Println(err)
        return
    }
    ts, _ := time.Parse("2006-01-02 15:04:05", "2014-08-28 15:04:00")
    stmt.Exec("edmond", ts)
}
func main() {
    db, err := sql.Open("mysql", "xx:xx@tcp(127.0.0.1:3306)/mvbox?charset=utf8")
    if err != nil {
        log.Fatalf("Open database error: %s\n", err)
    }
    defer db.Close()
    err = db.Ping()
    if err != nil {
        log.Fatal(err)
    }
    insert(db)
    rows, err := db.Query("select id,name,ts from t where id>?", 1)
    if err != nil {
        log.Println(err)
    }
    defer rows.Close()
    var id int
    var name string
    var ts string
    for rows.Next() {
        err := rows.Scan(&id, &name,&ts)
        if err != nil {
            log.Fatal(err)
        }
        log.Println(id, name,ts)
    }
    err = rows.Err()
    if err != nil {
        log.Fatal(err)
    }
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-11-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Golang语言社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档