Query FTP Data in DataGrip



Create a Data Source for FTP in DataGrip and use SQL to query live FTP data.

DataGrip is a database IDE that allows SQL developers to query, create, and manage databases. When paired with the CData JDBC Driver for FTP, DataGrip can work with live FTP data. This article shows how to establish a connection to FTP data in DataGrip and use the table editor to load FTP data.

Create a New Driver Definition for FTP

The steps below describe how to create a new Data Source in DataGrip for FTP.

  1. In DataGrip, click File -> New > Project and name the project
  2. In the Database Explorer, click the plus icon () and select Driver.
  3. In the Driver tab:
    • Set Name to a user-friendly name (e.g. "CData FTP Driver")
    • Set Driver Files to the appropriate JAR file. To add the file, click the plus (), select "Add Files," navigate to the "lib" folder in the driver's installation directory and select the JAR file (e.g. cdata.jdbc.ftp.jar).
    • Set Class to cdata.jdbc.ftp.FTP.jar
    Additionally, in the advanced tab you can change driver properties and some other settings like VM Options, VM environment, VM home path, DBMS, etc
    • For most cases, change the DBMS type to "Unknown" in Expert options to avoid native SQL Server queries (Transact-SQL), which might result in an invalid function error
  4. Click "Apply" then "OK" to save the Connection

Configure a Connection to FTP

  1. Once the connection is saved, click the plus (), then "Data Source" then "CData FTP Driver" to create a new FTP Data Source.
  2. In the new window, configure the connection to FTP with a JDBC URL.

    Built-in Connection String Designer

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

    java -jar cdata.jdbc.ftp.jar

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

    To connect to FTP or SFTP servers, specify at least RemoteHost and FileProtocol. Specify the port with RemotePort.

    Set User and Password to perform Basic authentication. Set SSHAuthMode to use SSH authentication. See the Getting Started section of the data provider help documentation for more information on authenticating via SSH.

    Set SSLMode and SSLServerCert to secure connections with SSL.

    The data provider lists the tables based on the available folders in your FTP server. Set the following connection properties to control the relational view of the file system:

    • RemotePath: Set this to the current working directory.
    • TableDepth: Set this to control the depth of folders to list as views.
    • FileRetrievalDepth: Set this to retrieve and list files recursively from the root table.

    Stored Procedures are available to download files, upload files, and send protocol commands. See the Data Model chapter of the FTP data provider documentation for more information.

  3. Set URL to the connection string, e.g., jdbc:ftp:RemoteHost=MyFTPServer;
  4. Click "Apply" and "OK" to save the connection string

At this point, you will see the data source in the Data Explorer.

Execute SQL Queries Against FTP

To browse through the FTP entities (available as tables) accessible through the JDBC Driver, expand the Data Source.

To execute queries, right click on any table and select "New" -> "Query Console."

In the Console, write the SQL query you wish to execute. For example: SELECT Filesize, Filename FROM MyDirectory

Download a free, 30-day trial of the CData JDBC Driver for FTP and start working with your live FTP data in DataGrip. Reach out to our Support Team if you have any questions.

Ready to get started?

Download a free trial of the FTP Driver to get started:

 Download Now

Learn more:

FTP Icon FTP JDBC Driver

An easy-to-use database-like interface for Java based applications and reporting tools access to remote files and directories.