gorm

What does mean Hibernate's “unsaved-value mapping was incorrect”?

狂风中的少年 提交于 2020-07-06 07:47:50
问题 There is a famous exception: org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [my.Entity#123456] This is a very familiar situation when "row was updated or deleted by another transaction". But what means another possibility - "unsaved-value mapping was incorrect"? And how to reproduce such situation intentionally? Grails 2.2.0 回答1: For a description of unsaved-value see http://docs.jboss.org/hibernate/core/3.6

Grails: domain object sort mapping not working

♀尐吖头ヾ 提交于 2020-05-16 21:58:33
问题 Here is my domain object: package org.olr.nonadmin import org.olr.admin.User class Question { // Integer id // autogenerated by db // Integer version // autogenerated integer Date dateCreated // auto filled Date lastUpdated // auto filled String qText // question text - can contain markup! String aText // answer text - can contain markup! boolean publik // public to all usersot needed String figureBase64 // image in BASE64 format, used in data-URI for figure String figureName // figure name

Golang gorm 关联数据不存在时如何返回Null

邮差的信 提交于 2020-05-03 16:37:46
Golang gorm 关联数据不存在时如何返回Null? gorm golang 这是model type Topic struct { BaseModel User User `json: "user" gorm: "ForeignKey:UserId" ` UserId int `json: "user_id" ` Category Category `json: "category" ` CategoryId int `json: "category_id" ` Title string `json: "title" ` Cover string `json: "cover" ` Content string `json: "content" ` LastReplyUser User `json: "last_reply_user" gorm: "ForeignKey:LastReplyUserId" ` LastReplyUserId int `json: "last_reply_user_id" ` LastReplyAt mysql.NullTime `json: "last_reply_at" ` ViewCount int `json: "view_count" ` LikeCount int `json: "like_count" ` IsRecommended

Gorm 预加载及实现联表条件查询仿WhereHas

半腔热情 提交于 2020-05-02 02:28:52
文献参考 http://gorm.book.jasperxu.com/ 写Go代码也有快一个月了,最近在将laravel项目转Gin的过程中,遇到了不少因为语法特性而导致迁移问题,其中一个就是Gorm这块 With方法被 Preload ,Association 替代 在laravel中,我们可以通过with方法将关联模型的数据引入并合并到查询的数据结构中 常见的写法如 $builder = Dynamic :: query () -> with ([ 'user:id,nickname,avatar,gender' , 'detail:id,dynamic_id,media_url,cover_img_url,media_time_length' , //'stat:id,dynamic_id,share_number,like_number,comment_number', 'topic:id,topic_name,topic_type' ]) -> where ( function ( $query ) use ($topicList,$followList){ $query -> whereIn ( "topic_id" , $topicList) -> orWhereIn ( 'user_id' ,$followList); });

Gin+Gorm小项目

↘锁芯ラ 提交于 2020-04-29 17:52:48
目录 Gin+Gorm小项目 创建项目 引用静态文件 搭建架子 创建数据库 添加功能 查找功能 修改功能 删除功能 总代码 Gin+Gorm小项目 创建项目 E:\gostudent\gin\bubble>go mod tidy //增加缺失的包,移除没用的包 package main import ( "github.com/gin-gonic/gin" "net/http" ) func main() { r := gin.Default() //告诉gin框架去哪里找模板文件 r.LoadHTMLGlob("templates/*") r.GET("/", func(c *gin.Context) { c.HTML(http.StatusOK, "index.html", nil) }) r.Run(":9090") } 引用静态文件 搭建架子 package main import ( "github.com/gin-gonic/gin" "net/http" ) //Tode Model type Tode struct { ID int `json:"id"` Title string `json:"title"` Status bool `json:"status"` } func main() { //创建数据库 //sql: CREATE DATABASE

gorm 更新数据时,0值会被忽略

跟風遠走 提交于 2020-04-28 21:48:38
原文: https://www.tizi365.com/archives/22.html -------------------------------------------------------- 一、前言 为方便描述教程例子,这里给出mysql表结构定义和golang结构体定义。 下面是教程用到的foods表结构定义: CREATE TABLE `foods` ( `id` int( 11) NOT NULL AUTO_INCREMENT COMMENT '商品id', `title` varchar( 100) NOT NULL COMMENT '商品名', `price` float DEFAULT '0' COMMENT '商品价格', `stock` int( 11) DEFAULT '0' COMMENT '商品库存', `type` int( 11) DEFAULT '0' COMMENT '商品类型', `create_time` datetime NOT NULL COMMENT '商品创建时间', PRIMARY KEY ( `id`) ) ENGINE= InnoDB DEFAULT CHARSET=utf8; 下面是foods表对应的golang结构体类型 //商品 type Food struct { Id int Title string

人生苦短,Let's Go目录

↘锁芯ラ 提交于 2020-04-28 21:47:25
目录 GO语言系列(一)- 初识go语言 GO语言系列(二)- 基本数据类型和操作符 Go语言系列(三)- 基础函数和流程控制 GO语言系列(四)- 内置函数、闭包与高级数据类型 GO语言系列(五)- 结构体和接口 Go语言系列(六)- 接口和反射 Go语言系列(七)- 读写操作 Go语言系列(八)- Goroute和Channel Go语言系列(九)- Socket编程和Redis Go语言系列(十)- http编程和mysql Go语言系列(十一)之依赖管理 Go语言系列(十二)之RabbitMQ消息队列 Go语言系列(十三)之gin框架 Go语言系列(十四)之GORM学习指南 ... 更新中 Go语言知识点补充 01. Go语言中new和make的区别 02.Go语言中各种数据格式转换 03.Golang学习 - regexp 包 04.Go语言命名规范 Go 项目实战 Go语言实战-爬取校花网图片 Go语言实战爬虫项目 来源: oschina 链接: https://my.oschina.net/u/4323481/blog/3586961

gorm系列-删除

蓝咒 提交于 2020-04-28 17:22:12
目录 Gorm删除 删除记录 批量删除 软删除 物理删除 不使用软删除 Gorm删除 软删除 删除记录 警告 删除记录时,请 确保主键字段有值 ,GORM 会通过主键去删除记录,如果主键为空,GORM 会删除该 model 的所有记录。 // 删除现有记录 db.Delete(&email) //// DELETE from emails where id=10; // 为删除 SQL 添加额外的 SQL 操作 db.Set("gorm:delete_option", "OPTION (OPTIMIZE FOR UNKNOWN)").Delete(&email) //// DELETE from emails where id=10 OPTION (OPTIMIZE FOR UNKNOWN); package main import ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql" ) //1. 定义模型 type User struct { gorm.Model Name string Age byte Active bool } func main() { //2. 连接Mysql数据库 db, err := gorm.Open("mysql","root:123456@tcp(127.0

gorm系列-查询

核能气质少年 提交于 2020-04-28 17:21:59
目录 Gorm查询 一般查询 where条件 普通SQL查询 Struch & Map 查询 Not条件 Or条件 内联条件 额外查询选项 FirstOrInit Attrs Assign FirstOrCreate Attrs Assign 高级查询 子查询 选择字段 排序 数量 偏移 总数 Group & Having 连接 Pluck 扫描 链式操作相关 链式操作 立即执行方法 范围 多个立即执行方法 Gorm查询 一般查询 // 根据主键查询第一条记录 db.First(&user) //// SELECT * FROM users ORDER BY id LIMIT 1; // 随机获取一条记录 db.Take(&user) //// SELECT * FROM users LIMIT 1; // 根据主键查询最后一条记录 db.Last(&user) //// SELECT * FROM users ORDER BY id DESC LIMIT 1; // 查询所有的记录 db.Find(&users) //// SELECT * FROM users; // 查询指定的某条记录(仅当主键为整型时可用) db.First(&user, 10) //// SELECT * FROM users WHERE id = 10; package main import (