我正在从我的应用程序运行server1上的存储过程。存储过程执行大量操作并使用过程的结果在server2上填充表。
我正在使用链接服务器来完成此任务。
当存储过程完成运行时,应用程序继续并尝试对存储过程的结果进行一些操作。
我的问题是存储过程的结果尚未完全插入到表中,因此对表的操作失败。
所以我的问题是。是否有可能确保链接服务器上的插入是同步完成的?我希望在链接服务器上的表实际完成之前不会返回存储过程。
答案 0 :(得分:0)
您可以使用第一个过程的输出参数。在第二台服务器上创建表时,输出参数值将返回到您的应用程序并指示操作已准备就绪。
如果事情很困难,那么您可以尝试设置商店程序的不同隔离级别:
答案 1 :(得分:0)
我找到了这种奇怪行为的原因。在调试期间添加了一行代码,在将同一个表中的数据写入链接服务器之前,在临时mem表上执行了select操作。
当运行select语句时,控件被返回给我的应用程序,同时存储过程继续运行。我想存储过程从一开始就是同步运行。