Last year I released
sql2xls, a free open-source tool which lets you throw a bunch of scripts into a folder, run them automatically against SQL Server and get the results back in a nicely-formatted Excel file, one tab per script.
A year later, I am happy to announce that the tool now runs cross-platform. You can compile and run it with .NET Core 3.1 LTS to run on Windows, macOS, and Linux. It uses the new
Microsoft.Data.SqlClient library from NuGet, as well as the latest beta of
Worth noting is that ClosedXML has a dependency on the
System.Drawing library. If you use macOS, you will need to install
mono-libgdiplus, and on Linux you’ll need
libgdiplus. Scott Hanselman explains more in his post How do you use System.Drawing in .NET Core? if you’re curious.
Please visit the GitHub repository and give it a look. Here’s a sample of the output on macOS Catalina:
~$ dotnet sql2xls.dll
--- SQL to Excel Exporter v0.2.0
--- Copyright (c) Born SQL
--- Written by Randolph West and other contributors. https://bornsql.ca/.
[01:12:30] *** [INFO] Opened connection to 0
Installing stored procedure from file [sp_Blitz.sql] in database [master]...
Running script [version.sql] in database [master]
Running script [sp_Blitz.sql] in database [master]
Writing worksheet 0...
Writing worksheet 1...
Excel file [d50c73533f21412aac2892096bc8e7d8_master.xlsx] generated in folder [/tmp].
Press any key to exit.
Please leave your thoughts in the comments below.