Introduction

Why?

When ever a dedicated application for a certain requirement isn't available in a company, it's quite likely a spreadsheet is being used for the purpose. Aside from its role as a backup for applications, Excel is one of the primary ways business users interact with data. As a result, a substantial amount of data in organizations today circulates in the the form of Excel files.

The trouble with this situation is that a lot of work is required to maintain this flow of data. This is often quite tedious work; spreadsheets aren't exactly most people's idea of fun. Furthermore, as ad-hoc applications, spreadsheets tend to make for brittle solutions and lead to some pretty big errors.

Improving the the way companies work with Excel can lead to data being more reliable and more readily available to decision makers, as well as making technical people who work with spreadsheets much happier. This makes for healthier and more successful organizations.

What can QueryStorm do for you?

Processing data

To make working with Excel data more effective, QueryStorm introduces the ability to use SQL and C# right inside Excel.

Both SQL and C# (with it's LINQ features) are excellent languages for dealing with sets of (related) data, and having them available in Excel can considerably empower the tech savvy user to clean, query, transform and modify data in Excel.

It's important to know that QueryStorm works primarily with Excel tables, rather than sheets.

Two way comminication with databases

There are certainly many ways of getting data in and out of Excel, but what QueryStorm offers in this regard is rather unique. QueryStorm enables live two-way communication between Excel and various types of databases, so that having the data in a database or having it in Excel is almost the same thing.

While connecting, QueryStorm enables you to select Excel tables that will be copied to the destination database as temp tables. From there, they can be imported into (or queried with) permanent database tables. Excel cells can be used as query parameters, query results can be returned into Excel tables and all of this can be automated in order to make the workbook interactively read and write data to and from databases.

Currently, QueryStorm supports connecting to the following types of databases: SQL Server, MySql, PostgreSQL, Access, ODBC, SQLite. Queries are processed by the database server having access to all its features and resources and data as well as data from Excel tables. The IDE makes writing queries easy with dialect specific SQL support.

Building Excel applications with C# and SQL

Excel documents aren't just passive stores of data. Support for formulas and VBA makes them applications in their own right. Since we're already building applications with Excel, why not use more powerful tools? QueryStorm's support for C# scripting makes Excel automation much more powerful. Being a modern language with a rich ecosystem of available libraries, C# makes automating work and interacting with the outside world much easier.

Teaching SQL

The way QueryStorm makes SQL avaiable in Excel makes it very useful for teaching and learning SQL. With it, you get to view your data and the effects your queries have on it real time. That's why QueryStorm is being used in several educational institutions and even a few companies to teach and learn SQL. If you're interested in this, I suggest taking a look at a SQL crash course for Excel users that uses QueryStorm.