
1 1sen 2024-11-06 09:06:11 +08:00 把常用的 SQL 保存到单独的文件里,加上注释,用的时候直接复制,改改就能用。不常用的就现写 |
2 charlie21 2024-11-06 09:06:22 +08:00 TablePlus 支持 sql 键入历史查询 https://docs.tableplus.com/query-editor/query-history |
3 Ayanokouji 2024-11-06 09:07:04 +08:00 datagrip 有 file 和 console 。常用的用 file 保存,临时的用 console 。 |
4 corcre 2024-11-06 09:12:42 +08:00 我, CRUD boy, 一般需要保存的 sql 就三种, 一种是用户让我导数据, 我会在 excel 那里加一个 sheet 把语句存进去, 不然下次他让再导一份我都不知道上哪给他整这个 sql 出来, 一种就是改了容易把系统改崩, 那就先存一份备份, 还有一种是 sql 还没写完, 得存起来下次接着写... 至于存哪, 我一般是存 onedrive 的自动上传的目录, 这样电脑坏了也不会丢工作进度, 更细致的管理我这个岗位好像就不需要了 需要写一堆东西才能 select 出来的我可能就直接存成视图了 |
6 lxqxqxq 2024-11-06 09:44:14 +08:00 视图? |
7 Tonnnyma 2024-11-06 09:52:17 +08:00 作为 sql boy ,根据每次的需求场景命名并带上需求方名称,日期,方便以后查阅;或者根据每次的查询内容概括一个名称保存。 |
8 jevonszmx 2024-11-06 09:56:32 +08:00 很多工具都带 sql 管理的,比如我最常使用的 navicat ,他就可以保存历史查询,常用的保存了一堆。 |
9 linghan 2024-11-06 10:06:26 +08:00 via Android 常用的查询都保存到一个 sql 文件里 |
10 mytoroto 2024-11-06 10:14:26 +08:00 datagrip ,我直接在 file 新建 sql ,专门留一两个 sql 文件用来平时的临时查询 |
11 lyxxxh2 2024-11-06 11:19:12 +08:00 |
12 dbit 2024-11-06 11:27:41 +08:00 orm 复杂的语句真是是灾难, sql 一般我存到 idea 里,并且用 git 同步 |
13 SaltyMouse 2024-11-06 11:28:19 +08:00 这个问题我也头疼,之前是会存一些常用的,注释好放在一个 sql 文件里面,如果有临时需要的就在最下面加,一个库一个 sql 文件,但村的 sql 多了也会有找不到的情况,着急的就又手敲语句了。DBeaver 有个好用的功能,输入“SF (关键字)+tab”会自动补全“select * from ;”,这个功能可以减少一部分重复输入,关键字和补全后的语句都可以自定义,但是表名还是得自己输一下。 |
14 boshok 2024-11-06 11:50:38 +08:00 massCode ,默认 sql 代码片断管理。 |
15 langhuishan 2024-11-06 11:51:09 +08:00 Obsidian 专门一个目录存放通用 SQL ,Obsidian 全文检索好评 |
16 sunznx 2024-11-06 12:09:23 +08:00 分享到文档上,和同事一起用,一起维护 |
17 carnivalist 2024-11-06 12:26:33 +08:00 DataGrip ,常用的保存到 scratch 文件,再用坚果云同步 |
20 displayabc 2024-11-06 14:33:26 +08:00 @lyxxxh2 #19 只用 ORM 的一般都没处理过数据,肯定不理解为什么存 SQL |
21 asLw0P981N0M0TCC 2024-11-06 14:58:41 +08:00 @lyxxxh2 #11 keyworlds |
23 lyxxxh2 2024-11-06 15:54:15 +08:00 |
24 geminikingfall 2024-11-06 15:54:29 +08:00 貌似 BE 一般不会写很复杂的 SQL ,大数据写的很多,所以 BE 一般不存。 |
25 zhhqiang 2024-11-06 15:56:28 +08:00 文件传输助手 - - |
26 displayabc 2024-11-06 15:59:53 +08:00 @lyxxxh2 #23 我可以肯定你没有处理过数据了 |
27 ccw4wcc &nsp; 2024-11-06 16:01:02 +08:00 @lyxxxh2 #23 如果让你经常处理一些线上的问题呢,比如要在线上数据库导出一些数据,那不是就得写 sql ,比如线上经常要更新一些数据,这些数据就需要写 sql 关联起来更新,那就需要把之前处理过的 sql 存住呀,下次方便继续改改继续用,如果是常用的代码业务逻辑肯定 sql 和 orm 都可以啊 |
28 Jonz 2024-11-06 16:04:04 +08:00 Navicat 有个 [创建片段] 的功能,可以把常用 SQL 保存起来,并且通过自定义名称来快捷输入。 比如我经常要连表查询某几张表: SELECT * FROM AAAA d LEFT JOIN BBBB dx ON dx.main_id = d.id; 那我就直接选中代码右键-创建片段,然后起个名称,比如 [ss] ,那后面我还需要再复用这个 SQL 时只需要输入 ss ,然后从下拉框选择这个片段,就会自动填充完整的 SQL 了。 SQL 里面也支持用占位符来当成变量,其他的数据库客户端应该也是有类似功能的,可以参考看看。 |
29 lyxxxh2 2024-11-06 16:15:19 +08:00 @ccw4wcc 很简单的我当然是一个 sql 。 大部分时候我都是用代码来修复数据,有个回查的地方。 至于 sql 关联,这我擦 不就是 orm 强项吗? 项目模型本身就做好关联了。 存 sql 方便以后用,不晓得。 反正我一次性代码执行完,基本不会再次执行,都会删掉。 ![]() |
30 9dP06m83vIV00l72 2024-11-06 16:28:25 +08:00 [袋鼠数据库工具] 支持缓存 SQL ,还支持保存 SQL 脚本,然后自动化列在文件列表种,双击即可打开,玩得飞起。。。 |
31 9dP06m83vIV00l72 2024-11-06 16:33:28 +08:00 [袋鼠数据库工具] 支持有三种 SQL 保存方式: 1 、支持缓存 SQL ,重新打开连接时自动加载; 2 、支持保存 SQL 脚本,然后自动显示在文件列表种,双击即可打开; 3 、支持保存为代码块,可以直接在只能提示中使用,也可以拖放使用; https://github.com/taozuhong/kangaroo |
32 ccw4wcc 2024-11-06 17:39:43 +08:00 @lyxxxh2 #29 如果是紧急修复线上的一个数据呢,还能用代码来修复吗?执行 sql 不得比执行代码响应来的速度吗? sql 关联指的是,你需要写一大堆 select join 才能关联到你需要修复的那一行数据,等你写完代码来修复数据,用户早就投诉疯了,你如果处理过线上紧急的修复数据,就不会说用代码来修复这种话了 |
33 ccw4wcc 2024-11-06 17:40:39 +08:00 @lyxxxh2 #29 功能肯定要用 orm 或者 sql 来写,但是紧急查询/修复线上数据,可没有时间让你去写代码来修复,都是一条 sql 丢给运维紧急执行一下 |
35 phf0313 2024-11-06 17:44:48 +08:00 navicat 保存查询 |
38 lyxxxh2 2024-11-06 19:10:06 +08:00 @ccw4wcc 你说的需要复杂的 sql 且紧急的,我没遇到过。 我大部分数据库错误都是某字段类型搞错了。 但是我深刻体会修数据比修 bug 还麻烦。 我本地确定代码没问题了,才敢线上执行。 宁可他们等,我也不想有可能产生数据问题。 当然我公司体量小,没几个客户。 |
39 lyxxxh2 2024-11-06 19:18:00 +08:00 @WIN2333 有没有可能,sql 会更加灾难。 拿嵌套子查询来说 select x from (select ... fomr select ( select... ) where (xx = xx or xxx = xx ..) ) |
40 xiaozirun 2024-11-07 17:23:19 +08:00 @andytao #31 是不是发错连接了 是这个 https://github.com/dbkangaroo/kangaroo?tab=readme-ov-file |