关于多个项目共用一个数据库的一些问题

2019-08-17 11:58:26 +08:00
 comwrg

现在的情况是在原有已经定义好表结构的数据库上 建立一个新的项目

因为新的项目使用的框架 所以需要把所有表的结构用框架所使用语言再写一遍

请问有没有什么好的处理方法呢?

  1. 不太想再手写一遍表定义
  2. 假如以后表结构变动 有什么好的处理办法
2450 次点击
所在节点    问与答
10 条回复
wangsongyan
2019-08-17 12:19:24 +08:00
看起来需要一个代码生成器
laminux29
2019-08-17 13:30:44 +08:00
为什么不新建一个数据库?共用数据库,很容易出问题。
gy123
2019-08-17 13:57:41 +08:00
不知道是什么项目管理工具,可以把业务跟数据库实体分模块,然后共用数据库实体模块的方式,减少不必要的代码量
comwrg
2019-08-17 14:01:02 +08:00
@laminux29 要用到里面的一些数据呀
Maboroshii
2019-08-17 14:06:51 +08:00
有同样的需求,学习一下
gigantic222
2019-08-17 15:43:43 +08:00
不知道你使用什么框架
1. 看社区有没有数据库到代码的 mapping 生成工具
2. 如果新项目使用同一框架,可以把负责定义 schema 的代码抽成公共类库在项目里引用
passerbytiny
2019-08-17 15:55:10 +08:00
你那个框架的数据库正反向工程能降低你的工作量。但是因为你是多项目公用数据库,每个项目对数据库结构都有控制权限,从而每个项目的自动工程都受限,最终大量的工作还得手工处理。

如果你现在不搞数据库隔离,将来坑会越来越大。
akira
2019-08-17 16:30:23 +08:00
你这种叫给自己挖坑。
原数据结构复制过来,数据克隆一份清洗成新系统要的数据格式,这样干干净净的多好。
laminux29
2019-08-18 04:24:40 +08:00
@comwrg 要用里面的数据,也不需要共用数据库,数据库共享有很多方案,建议使用中间接口稳妥些。
comwrg
2019-08-18 07:13:12 +08:00
@laminux29 非常感谢!不过数据库共享有哪些比较好的方案呢?打算使用 RPC 封装起来,不知道可不可行。

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

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

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

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

© 2021 V2EX