-
Notifications
You must be signed in to change notification settings - Fork 195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
user collection 用户征集 #30
Comments
直接在这里评论吗 |
@mysterytree 是的 |
建议加入Join |
@SammyLee666 不知道这个功能怎么用,能给个wiki吗 |
|
这个库的语法新奇,建议一些参数的命名follow下原生sql |
@daaaabeen 能给点具体的例子吗? |
将 limit 、group by 、having 等操作放到where 里,这样设计感觉不太合理 |
@daaaabeen 严格地讲,确实是这样的。但是Gendry的目的其实就是想简化写sql,而且希望支持的仅仅是简单sql,也就是能够通过map[k][v]就能描述清楚的场景,所以把非where部分也放到了这里面。基本上目前大部分够用了,如果有不够用的场景,就用NamedQuery自己手写sql |
请问可以支持 & 等位运算符吗? |
@QAQVictor 不支持 |
希望支持 PostgreSQL,现在我们需要 strings.Replace(? , $),谢谢 |
Grab 某team,用过 gorm 一段时间,受不了了,基于gendry 做了代码生成,非常喜欢 |
你们现在正在用gendry帮pg生成sql吗?单纯做个replace还好,不过如果你们已经在用pg上用gendry了,我可以支持一下设置placeholder的功能,比replace稍微提高一点点性能 |
哈哈,感谢!大家的满意是我们最大的动力 |
求加啊 感谢兄die |
求加啊 感谢兄die |
已经加入排期了 |
Grab +1 |
gendry也是支持pgsql的吗? |
@betazk 需要你把生成的sql中的placeholder做一个替换,因为mysql是?而pg是$ |
不错,支持一下,希望这个项目能持续维护下去。
|
请问一下 , 在scanner.Scan 的时候 , 如果是切片类型,查找不到结果为什么是是用nil返回而不是返回 ErrEmptyResult 的错误? |
建议可以像 Ctrip Apollo 项目 这样, 清晰明了,更容易让后来的人有信心去使用这个lib! |
@JHxx1229 , 抱歉之前看漏了你的问题。当Scan一个struct,由于struct每个字段都有默认值,用户无法判断到底结果集就是 0 0 "",还是说根本没取到数据,因此必须通过ErrEmptyResult来告诉用户。但是当Scan一个slice时,没取到len就是0,这样就能够很容易地判断了。这里确实有不一致,主要考虑的点是,没取到数据是正常的,不是错误,不应该用error来表示。一般如果有error就是真的出错了,使用方直接return err即可。但是由于我上面说的,Scan struct时用户没法知道到底取没取到数据,这才加上的ErrEmptyResult 。这也导致用户即使拿到error返回,还得额外做一个判断看是否是空集合。最好的方式是Rust那样使用Option枚举值来指示结果,但是Go不支持枚举类型也就没办法了。 |
现在还没有支持能够设置 placeholder呢 |
现在貌似不支持join? |
不支持,只能用builder.NamedQuery手写。不支持join的原因是,join过于复杂,join里又可能套join,最后map就没法看了,你自己可能都看不懂自己在写啥。所以对于复杂的sql一直推荐直接手写,还直观 |
希望update操作也支持_limit,现在在update里面用_limit会报“sql: converting argument $3 type: unsupported type []uint, a slice of uint”错误 |
希望支持
…------------------ 原始邮件 ------------------
发件人: "didi/gendry" <notifications@github.com>;
发送时间: 2020年12月8日(星期二) 下午3:21
收件人: "didi/gendry"<gendry@noreply.github.com>;
抄送: "Subscribed"<subscribed@noreply.github.com>;
主题: Re: [didi/gendry] user collection 用户征集 (#30)
希望update操作也支持_limit,现在在update里面用_limit会报“sql: converting argument $3 type: unsupported type []uint, a slice of uint”错误
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
scanner是把一个查询结果集(rows)scan到struct,在构造查询语句阶段希望能提供一个反向功能,通常在使用的时候都通过model把数据库的表结构做好了映射,然后赋值时用这个model struct作为约定去赋值,这时候在用gendry的话就需要把strcut转为[]map[string]interface{},如果官方能提供这样的功能那会方便很多,尤其是在insert和update的时候,可以参考sqlx的NamedQuery 补充说明一下,主要是针对insert和update的data参数 |
where:=map[string]interface{}{ 如果abc是复合索引 |
@overcls 最左匹配原则看的不是这个顺序。是否命中索引是和你where中有哪些条件有关,和where中条件的顺序无关,数据库会处理顺序的问题 |
好奇求问 gorm 主要「受不了了」的地方在哪里,因为没有用过 orm ,看文档感觉优点也挺多的,想看看缺点在哪方面。 |
where:=map[string]interface{}{ |
附带实现的mr,如果有时间可以帮忙审查下 |
多个or查询条件支持, |
To make gendry better and better, we want to know how many of you used it in your project and what functions gendry could provide to ease your burden. Please tell us about it, your company name, or your personal project. A long list could make gendry more convincing and attractive. eg:
Don't mind about the format, just share it with us!
为了让gendry更好的升级和维护,我们想要知道有多少项目正在使用它。如果你在公司项目或者个人项目中使用了gendry,请告诉我们,同时你对gendry的建议对我们来说也很重要!如果我们能收集一份长长的用户列表,也会使项目更具有说服力,吸引更多用户。
The text was updated successfully, but these errors were encountered: