可以通过何种技术来分析涉及上千个表级别的的 SQL Query / Procedure 的逻辑关系?

2019-11-04 17:27:37 +08:00
 Kamitora

难点

预期的结果

排除的方向

目前上级觉得可能的方向:NLP,然而本人对这方面没有相关知识,不清楚是否能够实现。

请各位 V 站大佬赐教

1279 次点击
所在节点    程序员
8 条回复
sun1991
2019-11-04 18:23:05 +08:00
天哪~能写出包含上千个表的 SQL, 神人呐
reus
2019-11-04 18:23:49 +08:00
不知道你们用什么数据库,PostgreSQL 支持 explain 输出 json,十分详尽,结合 information schema 之类元数据,完全可以做到。

explain 不够,那就直接写个插件切入 planner,什么都有了。
SmiteChow
2019-11-04 18:26:25 +08:00
sql 本就是结构化的,使用 antlr4 找一个 sql 语法解析器,根据语法树解析识别即可。
saulshao
2019-11-04 18:51:17 +08:00
理论上像 DBEAVER 之类的数据库管理工具可以允许你生成 E-R 图。前提是有建好的外键。
但是存储过程据我所知没什么好办法。
ddzzhen
2019-11-04 18:54:19 +08:00
参考魔兽世界的数据库,就是这样设计的,简直是一门艺术
Kamitora
2019-11-04 20:30:21 +08:00
补充下,数据库用的是 Oracle,感谢各位的回复!
liuzhedash
2019-11-05 09:40:26 +08:00
@ddzzhen #5
有详细资料嘛?很有兴趣了解一下
ddzzhen
2019-11-05 11:30:37 +08:00
@liuzhedash
https://github.com/cmangos/issues/wiki/Installation-Instructions
可以部署 3.3.5 感受一下数据库节结构,或者直接看数据库 wiki 头脑风暴

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/616176

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX