微軟發(fā)布了預覽版跨平臺數(shù)據(jù)庫開發(fā)工具SQL Operations Studio(SqlOps)。
該工具是Visual Studio Code的一個分支,可以運行在Windows、MacOS和Linux上。因為SQL Server 2017可以同時運行在Linux和Docker上,所以需要這樣的一個工具來簡化跨平臺開發(fā)。雖然VS Code已經(jīng)有一個SQL擴展(vscode-mssql),但因為微軟的SQL Server Management Studio是運行在Windows上的,所以在非Windows環(huán)境里開發(fā)SQL Server相關應用比較麻煩。
微軟并不打算棄用SSMS,“因為微軟的目標是為用戶提供更多的選擇,讓用戶可以根據(jù)具體場景選擇合適自己平臺的工具”。
SQL Operations Studio目前只支持SQL Server、Azure SQL和Azure SQL Data Warehouse。微軟目前沒有計劃提供JDBC支持,不過開發(fā)者可以擴展該工具,用于支持其他數(shù)據(jù)庫平臺。
SqlOps提供了一些重要特性,包括T-SQL編輯器,該編輯器支持自動完成和錯誤檢查,提供了一個健壯的查詢結果視圖,可以將結果導出到CSV或Excel(圖形化的查詢計劃視圖),還支持直接手動插入、修改、刪除表記錄。SqlOps還集成了一個對象瀏覽器,開發(fā)者可以通過它查看SQL Server和表信息、視圖、存儲過程等。
從OPS角度來看,DMO查詢結果可以展示成圖表的形式,也可以添加到自定義儀表盤上,盡管這樣做有點繁瑣。
其他的跨平臺數(shù)據(jù)庫工具(如Dbeaver和JetBrains DataGrip)可以支持更多種類的數(shù)據(jù)庫,但不管哪一種工具都不是銀彈。DataGrip不是免費的,Dbeaver需要預先安裝Java。而對于使用微軟數(shù)據(jù)庫的開發(fā)者來說,SqlOps才是首選。
SqlOps和mssql VS Code擴展均使用了最新的SQL Tools API服務,該服務使用了SQL Management API的一個子集。SQL Tools API服務其實就是VS Code語言服務器,為VS Code提供了語言驗證和錯誤檢測功能。
SQL Operations Studio托管在GitHub上,目前還處于公開預覽版狀態(tài),后面還有很長一段路要走。人們已經(jīng)在GitHub倉庫中提了很多建議,所以該工具的開發(fā)團隊在未來幾年有很多事情要做?;蛟S現(xiàn)在還不能完全撇開SSMS,但對于一些簡單的場景,使用SQL Operations Studio或許更加合適。
查看英文原文:Microsoft Previews Cross Platform Tool for Working with SQL Server