Mac にインストールした sql-cli と VS Code の SQL Server Extension がどうやって SQL Server に接続しているかが気になったので軽く調べていました。
Contents
sql-cli
sql-cli は Node.js で作成されており、基本的なモジュールは以下になります。
https://www.npmjs.com/package/sql-cli
https://github.com/hasankhan/sql-cli
sql-cli の SQL Serve の実際のアクセスについては mssql が使用されているようです。
https://www.npmjs.com/package/mssql
https://github.com/patriksimek/node-mssql
mssql についても SQL Server へのアクセスは外部のモジュールとなっているようで、最終的なアクセスについては、「Microsoft Driver for Node.js for SQL Server」が使用されているみたいですね。
https://www.npmjs.com/package/msnodesql
https://github.com/Azure/node-sqlserver
SQL Server Extension
SQL Server Extension は調べていてなかなか興味深かったです。
最初は、sql-cli と同じで、Node.js のドライバーを使用しているのかと思っていたのですが、違うみたいですね。
vscode-mssql については以下で公開されています。
https://github.com/Microsoft/vscode-mssql
実際の SQL Server のアクセス部分については「sqltoolsservice」となっているようで、これ .NET Core で作られているのですね。
Windows / Mac / Linux ともに、.NET Core 経由でのアクセスなんですね。
https://github.com/Microsoft/sqltoolsservice
SQL Server Extension を Mac にインストールする場合、OpenSSL が必要となります。
きちんと調べていなかったのですが、.NET Core をインストールするために必要だったのですね。
https://www.microsoft.com/net/core#macos