Sql server 使用共享数据库的两个类似软件——如何做到最好?
我们制作软件,用于管理给予非营利组织的赠款的参与者。(例如,如果您的家庭需要食品券,那么该办公室必须以某种方式跟踪您的家庭并向州政府报告) 到目前为止,我们一直专注于一项特别复杂的赠款。我们现在希望扩大到其他赠款。我们的第一个目标是一个相当简单的拨款。它的代码刚刚堆积到旧应用程序上。现在我们决定最好的做法是将这两个项目分开(因为不是所有的客户都有这两项补助金)。理论上这听起来很容易 通过补丁和SVN合并功能,我们可以非常轻松地管理由此带来的代码复杂性。更难的是,他们的数据库是相同的。这两项赠款共用几个表格和几个程序。但这是一个相当大的遗留数据库(超过40个表,100个存储过程) 保持这两个数据库分开,但仍共享其公共元素的最佳方法是什么?我们不关心两个应用程序写入同一个数据库时的冲突(我们有锁),而是关心开发和更新客户机服务器以及管理复杂性时的模式冲突 我们已经考虑了几个选项:Sql server 使用共享数据库的两个类似软件——如何做到最好?,sql-server,database,delphi,versioning,Sql Server,Database,Delphi,Versioning,我们制作软件,用于管理给予非营利组织的赠款的参与者。(例如,如果您的家庭需要食品券,那么该办公室必须以某种方式跟踪您的家庭并向州政府报告) 到目前为止,我们一直专注于一项特别复杂的赠款。我们现在希望扩大到其他赠款。我们的第一个目标是一个相当简单的拨款。它的代码刚刚堆积到旧应用程序上。现在我们决定最好的做法是将这两个项目分开(因为不是所有的客户都有这两项补助金)。理论上这听起来很容易 通过补丁和SVN合并功能,我们可以非常轻松地管理由此带来的代码复杂性。更难的是,他们的数据库是相同的。这两项赠款共
Persons Table
--------------------------
PersonID LastName FirstName
FoodStamps Table (From Application 1)
--------------------------
PersonID FoodStampAllotment
HousingGrant Table (From Application 2)
--------------------------
PersonID GrantAmount
如果需要,可以向扩展表添加前缀
此查询将仅获取FoodStaps计划中的人员:
SELECT * FROM Persons
JOIN FoodStamps
ON FoodStamps.PersonID = Persons.PersonID