您现在的位置是:网站首页> 编程资料编程资料
Go语言操作mysql数据库简单例子_Golang_
2023-05-26
347人已围观
简介 Go语言操作mysql数据库简单例子_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)
}
}
相关内容
- Go语言实现简单的一个静态WEB服务器_Golang_
- 理解Golang中的数组(array)、切片(slice)和map_Golang_
- Golang实现的聊天程序服务端和客户端代码分享_Golang_
- Go语言并发模型的2种编程方案_Golang_
- Go语言中new()和 make()的区别详解_Golang_
- Go语言的方法接受者类型用值类型还是指针类型?_Golang_
- Go语言中的方法、接口和嵌入类型详解_Golang_
- Go语言中的Array、Slice、Map和Set使用详解_Golang_
- Go语言中使用 buffered channel 实现线程安全的 pool_Golang_
- Go语言实现的一个简单Web服务器_Golang_
