有兴趣的朋友可以做一下比较。我只说理论的。
调用用友Co是比较方便的,了解一下相关的参数后直接调用就可以了。一般情况下,调用co之后他会做一些参数合法性的验证。
例如科目编码是否合法,或者存货档案,客户档案之类的。最后再直接插入数据库。而插入数据库执行的和我们插库一样,都是Insert Into
所以,正常情况下调用Co不可能比我们直接插入更快,并且他们在做这些验证工作,反而要比我们慢许多。而验证工作也是必须的,我们可以省掉这一步吗,
这肯定是不可以的,但我们可以从数据库中将所有的档案取过来后,存入内存,每一次验证便不再需要再到数据库里进行验证了。并且有部份验证环节,在我们需要插库时
己经知道他是合法的了,那么也没有必要再进行多余的重复工作了。也许一个档案的验证时间是以毫秒来计算的,我们可以无视他。但如果我们做的是批量生单呢?这些都是优化。
还有,例如一张单据有多条记录,那么插入这张单据的子表时,插入的数据表和字段都是一样的,这时,我们可以先验证后,再批量插入,这样的速度会比一条一条插入更快。
当然,调用co也有好处,那就是你不必知道还有哪些数据表需要插入,也不需要自己去验证数据的合法性。
写这篇不成文章的文章,是有网友,因为他之前的项目是插库的,效率太底了,然后说要改用Co。我知道后有感而发。