跨服務器導入數據SQL語句及其問題解決方案
跨服務器導入數據SQL語句:安全
--自定義表名,在導入前建立表
SELECT * INTO TbName FROM OPENROWSET('SQLOLEDB','192.168.0.7';'sa';'damon king',DBName.dbo.TbName)服務器
--跨服務器查詢示例
SELECT * FROM OPENROWSET('SQLOLEDB','192.168.0.7';'sa';damon king',DBName.dbo.TbName)
按F5執行,若未啓用'Ad Hoc Distributed Queries'(專案分佈式查詢),則會提示以下信息:分佈式
SQL Server 阻止了對組件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的訪問,由於此組件已做爲此服務器安全配置的一部分而被關閉。系統管理員能夠經過使用 sp_configure 啓用 'Ad Hoc Distributed Queries'。有關啓用 'Ad Hoc Distributed Queries' 的詳細信息,請參閱 SQL Server 聯機叢書中的 "外圍應用配置器"。spa
此時,可使用sp_configure來啓用'Ad Hoc Distributed Queries' :it
--啓用'Ad Hoc Distributed Queries'io
EXEC SP_CONFIGURE 'show advanced options',1
RECONFIGURE
EXEC SP_CONFIGURE 'Ad Hoc Distributed Queries',1
RECONFIGURE class
當執行完導入後,最好將'Ad Hoc Distributed Queries' 關閉:
--關閉'Ad Hoc Distributed Queries'
EXEC SP_CONFIGURE 'Ad Hoc Distributed Queries',0
RECONFIGURE
EXEC SP_CONFIGURE 'show advanced options',0
RECONFIGUREdva
此時完成了跨服務器導入數據任務!配置