Connect to Excel Services Data in JRuby

Ready to get started?

Download for a free trial:

Download Now

Learn more:

Excel Services JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with live Excel Spreadsheet content hosted on SharePoint server!



Create a simple JRuby app with access to live Excel Services data.

JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for Excel Services makes it easy to integrate connectivity to live Excel Services data in JRuby. This article shows how to create a simple JRuby app that connects to Excel Services data, executes a query, and displays the results.

Configure a JDBC Connection to Excel Services Data

Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for Excel Services\lib).

JRuby natively supports JDBC, so you can easily connect to Excel Services and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.

The URL, User, and Password properties, under the Authentication section, must be set to valid credentials for SharePoint Online, SharePoint 2010, or SharePoint 2013. Additionally, the Library property must be set to a valid SharePoint Document Library and the File property must be set to a valid .xlsx file in the indicated Library.

Built-in Connection String Designer

For assistance in constructing the JDBC URL, use the connection string designer built into the Excel Services JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

java -jar cdata.jdbc.excelservices.jar

Fill in the connection properties and copy the connection string to the clipboard.

Below is a typical JDBC connection string for Excel Services:

jdbc:excelservices:URL=https://myorg.sharepoint.com;User=admin@myorg.onmicrosoft.com;Password=password;File=Book1.xlsx;

Create a JRuby App with Connectivity to Excel Services Data

Create a new Ruby file (for example: ExcelServicesSelect.rb) and open it in a text editor. Copy the following code into your file:

require 'java' require 'rubygems' require 'C:/Program Files/CData/CData JDBC Driver for Excel Services 2018/lib/cdata.jdbc.excelservices.jar' url = "jdbc:excelservices:URL=https://myorg.sharepoint.com;User=admin@myorg.onmicrosoft.com;Password=password;File=Book1.xlsx;" conn = java.sql.DriverManager.getConnection(url) stmt = conn.createStatement rs = stmt.executeQuery("SELECT Name, AnnualRevenue FROM Account") while (rs.next) do puts rs.getString(1) + ' ' + rs.getString(2) end

With the file completed, you are ready to display your Excel Services data with JRuby. To do so, simply run your file from the command line:

jruby -S ExcelServicesSelect.rb

Writing SQL-92 queries to Excel Services allows you to quickly and easily incorporate Excel Services data into your own JRuby applications. Download a free trial today!