撰寫 SpecFlow 的時候需要用到 AS400 上的資料欄位,為了快速產生 Spec Table 於是又把腦筋動到 SSMS 的 Results to Text,詳見前文
https://dotblogs.com.tw/yc421206/2016/01/11/232015
所以要用 SSMS 連接 AS400,對 AS400 不熟,於是詢問同事,該如何處理,經過整理後得到了以下答案...
隨手記錄下來,以免忘記
開發環境
- Windows 10 Enterprise x64 CHT
- SQL Server 2014 Developer Edition
- IBM i Access for Windows V7R1
版本不同會導致操作畫面不同
實作步驟
接著開啟 SSMS,新增一個 Linked Server
Provider:IBM DB2 for i IBMDA400 OLE DB Provider
Provider Name:IBMDA400
Data Source:伺服器位置
輸入帳號/密碼
完成之後,應該可以在Catalogs 展開節點看到以下服務
使用 OpenQuery
SSMS 無法直接瀏覽 AS400 的資料,可以透過 OpenQuery 瀏覽,語法相當簡單,如下範例:
SELECT * FROM OPENQUERY ([AS400],'select * from your library.your table')
查詢結果如下:
我只是要利用 SSMS 幫我產生SpecFlow,OpenQuery 的異動命令我應該就用不到了,有興趣的可以到以下連結
https://msdn.microsoft.com/zh-tw/library/ms188427.aspx
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET