A机器上执行,创建临时表
CREATE TABLE #sales (
。
) ON [PRIMARY]declare @SqlStr as varchar(8000)
SET @SqlStr = 'SELECT V_S.* FROM B机器上的表 V_S
WHERE V_S.SAL_DT BETWEEN ''2010/04/10'' AND ''2010/04/11'''INSERT INTO #sales (不加这段,可以抽出数据,加上就报错)
EXEC (@SqlStr)----------------------------------------------------------------------------
サーバー : メッセージ 7391、レベル 16、状態 1、行 1
OLE DB プロバイダ 'SQLOLEDB' は分散トランザクションを開始できなかったので、要求した操作は実行されませんでした。
[OLE/DB provider returned message: 指定されたトランザクション コーディネータに、新規トランザクションを参加できませんでした。]
OLE DB エラー トレース [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a]。
------------------------------------------------------------------------
意思就是: 分散式事务,我晕,压根就没有用事务吗这是什么原因?
CREATE TABLE #sales (
。
) ON [PRIMARY]declare @SqlStr as varchar(8000)
SET @SqlStr = 'SELECT V_S.* FROM B机器上的表 V_S
WHERE V_S.SAL_DT BETWEEN ''2010/04/10'' AND ''2010/04/11'''INSERT INTO #sales (不加这段,可以抽出数据,加上就报错)
EXEC (@SqlStr)----------------------------------------------------------------------------
サーバー : メッセージ 7391、レベル 16、状態 1、行 1
OLE DB プロバイダ 'SQLOLEDB' は分散トランザクションを開始できなかったので、要求した操作は実行されませんでした。
[OLE/DB provider returned message: 指定されたトランザクション コーディネータに、新規トランザクションを参加できませんでした。]
OLE DB エラー トレース [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a]。
------------------------------------------------------------------------
意思就是: 分散式事务,我晕,压根就没有用事务吗这是什么原因?
-try
CREATE TABLE ##sales 关键看见日文就火。
看看有没有帮助
是不是B机器的表没法link啊
在A和B上分别查询看看结果如何:
select server_id,name,data_source,product from sys.servers如果是SQL2005及以上版本,参考:
http://blog.csdn.net/claro/archive/2009/07/03/4317900.aspx
(三天不结帖的木有小JJ) ,那要是女的呢