工作中,因為需要,搭建同事的程序模塊,附加了從同事那里拷過來的該程序使用的庫。(C#、C/S、.Net Framework4.0 、WCF、Win10、SQL Server 2014、VS2015)
一路解決報錯,比如“缺少根元素”,調試代碼的過程中發現會打開不屬於該項目的文件,查看環境才發現與文件相關的有一個服務應用程序沒有啟動,這是我的模塊不需要的,啟動之后該錯誤解除。
加載數據時,日志記錄下圖所示錯誤:
百度了下,網上的方法基本和日志提示的解決辦法差不多:
1)、查詢得到原來的計算機(服務器)名稱
select * from sys.servers
2)、刪除原來的服務器名
sp_dropserver '原來的服務器名'
3)、添加新的服務器名,重啟服務
sp_addserver '10.0.2.13' (我的計算機適用日志提示的語句:exec sp_addlinkedserver '10.0.2.13' )
4)、我到第三步就沒往下執行了(此時不報這個錯誤,但問題沒有解決,程序卡死),網上說第四步這樣做
sp_serveroption '新的服務器名','data access', 'true' (設定 SQL Server 選項,使其允許加入linked server)
執行完成后 重啟sql服務 然后才能生效
我只執行到第三步,發現不太對,就還原回去了,重新跟蹤代碼發現該語句是在新加的這個庫執行的,我之前也有把報錯語句在原有的一套數據庫執行,是可以正常執行查詢的,但其實該語句涉及的表是在新加的庫里建的視圖,視圖里數據表源是原庫的表,視圖是這么寫的:
所以,把這個刪掉就好啦!