TransactionScope 多数据库连接,报“服务器 '.\\SQL2008' 上的 MSDTC 不可用。”错误。

TransactionScope多数据库连接,报“服务器'.\\SQL2008'上的MSDTC不可用。”错误。我的需求是:要连接多个数据库,我使用了Transaction... TransactionScope 多数据库连接,报“服务器 '.\\SQL2008' 上的 MSDTC 不可用。”错误。我的需求是:要连接多个数据库,我使用了TransactionScope 事务回滚,因为要分别往不同数据库写数据。string someSql2005 = "server=.\\SQL2008;uid=sa;pwd=123456;database=BPMEF"; string anotherSql2005 = "server=.\\SQL2008;uid=sa;pwd=123456;database=RM_DB"; //创建TransactionScope using (TransactionScope tsCope = new TransactionScope()) { //连接数据库1 using (SqlConnection cn2005 = new SqlConnection(someSql2005)) { SqlCommand cmd = new SqlCommand("select * from Sys_Users", cn2005); cn2005.Open(); cmd.ExecuteNonQuery(); } //连接数据库2 using (SqlConnection cn2005 = new SqlConnection(anotherSql2005)) { SqlCommand cmd = new SqlCommand("select * from Base_UserInfo", cn2005); cn2005.Open(); cmd.ExecuteNonQuery(); } tsCope.Complete(); } 展开
 我来答
亲者亲
2016-09-18 · 知道合伙人软件行家
亲者亲
知道合伙人软件行家
采纳数:135 获赞数:169

向TA提问 私信TA
展开全部
Data Server=.\SQLEXPRESS;Initial Catalog=……
Data Server=服务器名\SQLEXPRESS;Initial Catalog=……
Data Server=localhost\SQLEXPRESS;Initial Catalog=……
Data Server=.;Initial Catalog=……
Data Server=服务器名;Initial Catalog=……
哪种正确,这跟数据库版本有关系,如果是SQL Server 2005 Express版本,则必须要有“\SQLEXPRESS”。而且如果这个字符串是定义为一个变量的时候,VS2005还会在“\”的下面加个红色的波浪 线提示你“\S是无法识别的转义序列”,因此如果字符串是定义为一个变量的时候应该写成Server=.\\SQLEXPRESS。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式