我司有三台数据服务器A、B、C,为了能方便的在A服务器查询到B、C服务器的数据,所以我们用了LinkServer连接服务器在A设了B、C为连接服务器,Sqlserver2000要使用linkServer一定要先打上sp4补丁,否则会提示连接不成功,经过配置,已经能在查询分析器正常查询到B、C的数据(语句:select khzd.* from B.Zd.dbo.Khzd khzd),但奇怪的是,我在VFP获取了A服务器的连接句柄后,执行上面的查询语句,却提示无“新事务不能登记到指定的事务处理器中”。
解决方法:
跟连接方式有关,我们原来获取句柄方式为CONNS1=SQLCONNECT(DataSource ,DataUser ,C1),
只要将连接句柄改为
connectString="driver=SQL server;";
+"Server="+DServer+";";
+"Uid="+DataUser+";";
+"Pwd="+C1+";";
+"Database=Master"
CONNS1=sqlstringconnect(connectString)
即可