gorm/main.go

53 lines
1.6 KiB
Go

package main
import (
"fmt"
"github.com/jinzhu/gorm" //必须引入
_ "github.com/jinzhu/gorm/dialects/mysql" //必须引入
// "gorm.io/driver/mysql"
// "gorm.io/gorm"
)
type Video struct { //数据添加结构体
// gorm.Model
Vid int `gorm:"primary_key"`
Vimg string
Articleid int
Video string
}
func main() {
// 参考 https://github.com/go-sql-driver/mysql#dsn-data-source-name 获取详情
db, err := gorm.Open("mysql", "root:123456@tcp(127.0.0.1:3306)/companyinfo?charset=utf8")
// db.SingularTable(true) 取消默认加s
db.LogMode(true) //开启sqldebug模式
defer db.Close() //使用完数据库后断开
if err != nil {
fmt.Println(err)
} else {
fmt.Println(db)
}
// db.Select("Name", "Age", "CreatedAt").Create(&user)
// db.AutoMigrate(&Video{})
var video = Video{Vimg: "11", Articleid: 3, Video: "22"} //结构体添加数据
// video := Video{}
fmt.Printf("%v", video)
// result := db.Create(&video) // 通过数据的指针来创建
// result := db.First(&video) 查询第一条
// result := db.Where("vid = ?", 2).Find(Video{}) 查询
result := db.Model(Video{}).Where("vid = ?", 28).Update(map[string]interface{}{"Vimg": "77", "video": "21"}) //更新数据
// result := db.Where("vid = ?", 29).Delete(Video{}) //删除数据
fmt.Printf("%v", result)
// fmt.Println("$v", result1)
if result != nil {
fmt.Println("succ")
} else {
fmt.Println("fail")
}
// user.ID // 返回插入数据的主键
// result.Error // 返回 error
// result.RowsAffected // 返回插入记录的条数
}