gorm中文文档
http://gorm.book.jasperxu.com/
因为程序非常简单,一目了然,因此不做过多解释:
package main
import (
"fmt"
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/mysql"
)
type UserInfo struct {
Id int `gorm: "primary_key;AUTO_INCREMENT:number"`
UserName string `gorm:"column:name"`
Phone string
}
func main() {
fmt.Println("hello go");
//连接数据库
db, err := gorm.Open("mysql", "root:123456@(192.168.90.58:3306)/face_longan?charset=utf8&parseTime=True&loc=Local")
defer db.Close()
if err != nil {
panic(err)
}
// 全局禁用表名复数
db.SingularTable(true)
has := db.HasTable(&UserInfo{})
if !has {
db.AutoMigrate(&UserInfo{})
fmt.Println("创建表")
}
//添加数据
/*db.Create(&UserInfo{UserName: "qhy", Phone: "123"})
db.Create(&UserInfo{UserName: "guo", Phone: "456"})*/
//查询数据
//获取第一条记录
fmt.Println("获取第一条记录")
var user UserInfo
db.First(&user)
fmt.Println(user)
//更新数据
/*
fmt.Println("更新qhy全部字段")
user.UserName = "qinhy123"
user.Phone = "111111"
db.Save(user)*/
fmt.Println("更新部分字段")
db.Model(&user).Update("name", "qhy")
//删除guo记录
var del_user UserInfo
del_user.Id = 4
del_user.UserName = "guo"
db.Delete(&del_user)
//获取所有记录
fmt.Println("获取所有记录")
var users []UserInfo
db.Find(&users)
fmt.Println(users)
}