web-dev-qa-db-ja.com

RHEL Linux 7.3上のSQL Server 2017のSQLCMDでSQLクエリの出力をフォーマットする方法

RHEL Linux 7.3にSQL Server 2017をインストールし、SQLCMDを使用してSQL Serverにクエリを実行しました。

たとえば、「SELECT * FROM SYS.DATABASES」をクエリしようとすると、次のような出力が得られます。

enter image description here

RHEL Linux上のSQL ServerのSQLCMDでSQLコマンドの出力をフォーマットする方法

たとえば、Oracleでは、「SET LINES 200 PAGES 200」を使用して、出力/出力列の幅をフォーマットします。

注:私はすでに次の回避策を試しました(dba.stackexchangeの他の回答に従って):

C:/> sqlcmd -S my_server:setvar SQLCMDMAXVARTYPEWIDTH 30:setvar SQLCMDMAXFIXEDTYPEWIDTH 30 SELECT * from my_table GO

1
Shaurya S

sqlcmd ユーティリティは、自動化シナリオなどでコマンドラインを介してT-SQLスクリプトを実行するのに便利ですが、出力フォーマット機能とインタラクティブクエリエディターに制限があります。

mssql-cli 代わりに、インタラクティブなターミナルクエリを使用します。このオープンソースツールは、ページネーションを提供し、幅広い結果を適切に処理し、IntelliSenseを含み、emacsまたはviモードを使用できるようにします。 mssql-cliはLinux、Windows、Macで動作します。

enter image description here

さらに追加します Azure Data Studio は、完全なデスクトップエクスペリエンスが必要な場合に、SSMSのクロスプラットフォームの代替手段です。 SSMSで使用可能なすべての機能が含まれているわけではありませんが、他の機能が含まれており、拡張性が高くなっています。

1
Dan Guzman