想请教下各位 平时用 orm 还是 sql 多呢
sql 可以跨语言 orm 跟语言绑定感觉有学习成本
可能日经贴了 但是真的很困惑。。。
1
starsriver 2019-07-13 12:12:36 +08:00 via Android
sql
|
2
www5070504 OP @starsriver 谢谢
|
3
lhx2008 2019-07-13 12:20:43 +08:00 1
orm 只是帮你把关系转化成 sql 并且自动填充而已,完全不是一个纬度的东西。
|
4
beginor 2019-07-13 12:25:38 +08:00 via Android
为什么不是结合起来用呢,增删改查用 ORM,复杂查询用 SQL
|
5
icy37785 2019-07-13 12:26:41 +08:00 via iPhone
小孩子才做选择,
|
6
ke1e 2019-07-13 12:32:03 +08:00 via Android
我觉得个人开发选择 orm,无它,方便。团队的话业务与 sql 分离更容易管理
|
7
leishi1313 2019-07-13 12:37:07 +08:00 via Android
我觉得你如果在这么问的话,你直接写 sql 肯定会有注入漏洞
|
8
way2create 2019-07-13 12:51:04 +08:00
问再多也没用,实际开发该用啥还是用啥,照样要学
|
9
eslizn 2019-07-13 12:57:35 +08:00
业务逻辑力一堆 sql 能看?
|
10
lasuar 2019-07-13 13:06:47 +08:00 via Android
orm 可读性更好?实际开发过程中,简单的用 orm,复杂用 sql 写好注释
|
11
Hstar 2019-07-13 13:24:14 +08:00 via iPad
我的观点是可以用 orm,但是必须懂 sql
|
12
ibugeek 2019-07-13 13:26:04 +08:00
增删改查用 ORM,复杂查询用 SQL
|
13
liuxey 2019-07-13 13:47:45 +08:00
楼主的论据有问题,即使 SQL 跨语言,但和 SQL 相关的 API 还不是和语言绑定的?你要查 SQL、处理返回数据,都要学相关语言的 API 或包,只是 ORM 又多了一层而已,
所以楼上们都说了,简单的 ORM,复杂查询 SQL |
14
JJstyle 2019-07-13 13:54:48 +08:00
一看就没工作经验的人问的问题
|
15
hourann 2019-07-13 14:07:19 +08:00 via iPhone
sql:效率高,可迁移学习成本。orm:类型安全,可维护性强。个人项目、小规模项目,可以用 sql。其他情况下建议 orm。
|
16
danjk159 2019-07-13 14:17:06 +08:00
sql 是基础,orm 是操作简化版的工具?基础总是要会的,总有时候会需要用到,比如效率要求比较高的时候.orm 很多时候比较方便,效率要求低用 orm 倒是无所谓,学到后面 sql 就要用了,但确实这个时候写成了不好维护,很多后台开发不擅长使用 sql,不知是否是 orm 使用过多 sql 经验不足.
|
17
luwies 2019-07-13 14:35:03 +08:00
安卓这个的 room 库是一个需要写 sql 的 ORM。。。
|
18
NizumaEiji 2019-07-13 14:36:47 +08:00
看情况
如果让我用 jpa 这种东西 我宁愿用 jdbcTemplate 写 sql |
20
razertory 2019-07-13 20:34:36 +08:00
程序员通过非 SQL 的编程语言操作数据库,最期望的应该就是想像操作编程语言中的数据结构来操作数据库,我认为这个是大多数开发者所期望的。数据库中有 OLAP 和 OLTP 场景,如果是偏向 OLAP,毫无疑问用 SQL,不论是关系型数据库还是大数据集群。反之,ORM 可以更专注在事务逻辑层面。
|
21
Cbdy 2019-07-13 20:53:12 +08:00
具体看需求场景
|
22
kran 2019-07-13 22:00:36 +08:00 via Android
不用 orm 也挺好的
|
23
sr0miao 2019-07-14 12:07:04 +08:00
sql 好
|
24
sazima 2019-07-14 23:20:17 +08:00
我之前同事拒绝用 orm, 项目写到一半,然后自己封装了类似 orm 的东西
|
25
jinsongzhao 2019-08-31 09:08:26 +08:00
我是优先 orm,orm 解决不了的才使用 sql,当发现了 orm 可解决 sql 问题时,再替换掉 sql,目的是因为 orm 跨数据库兼容性很好,orm 会利用数据库中间件的缓存,升级数据库中间件就能自动引入未来的新 sql 技术,改善性能。
|