存储过程与表之间的关联关系算法实现
想向大家请教一个实现方法。我们的系统业务用了几十个存储过程来汇聚数据到不同的表中,有些存储过程之间是有依赖关系的,有些是没有关联关系可以并行执行的,现在想要一个计算方法计算出他们之间的关联关系,来判断哪些存储过程可以并行执行,哪些必须一个一个串行执行。还具备的作用就是,计算出来之后,知道当某个存储过程执行异常之后,可以计算出哪些有依赖的存储过程需要重新运行。
目前打算人工记录所有存储过程的取数来源和插入数据的对象形成列表,比如这个列表的格式如下:
存储过程名称 from表名 insert表名
P_1 T_1 T_2
P_2 T_2 T_3
P_3 T_2 T_4
P_4 T_3 T_5
P_5 T_4 T_6
根据上面这个列表,假设存储过程P_2执行异常导致T_3表里面没有数据,那么就应该计算出存储过程P_4也需要重新执行;如果存储过程P_1执行异常导致T_2没有数据,那么P_2、P_3、P_4、P_5都需要重新执行。
集思广益,不知道大家有没有好的计算方法? --------------------编程问答-------------------- 给多少钱我?啊啊
补充:.NET技术 , 分析与设计