Google Drive の Excel ファイルを読み取る方法:CData Excel Driver

by 杉本和也 | 2021年02月26日

f:id:sugimomoto:20210226142143p:plain

こんにちは。CData Software Japanリードエンジニアの杉本です。

以前、クラウドストレージサービス BoxにアップされているExcel ファイルを CData Excel Driverで読み取る方法を紹介したことがありました。

www.cdatablog.jp

最近「Google Driveでも同じことはできないの?」というご相談を頂きましたので、Google Drive版を紹介したいと思います。

www.cdata.com

なお、前回はODBC Driverを使用して、Power BI から接続しましたが、今回はJDBC Driverを使ってDbVisualizer から接続します。でも、基本的な動作はJDBC・ODBC・ADO.NET等すべてのテクノロジーで共通です。

必要なもの

対象のファイル

今回の対象のファイルは以下のExcelファイル「test.xlsx」です。

f:id:sugimomoto:20210226141649p:plain

Google Driverのマイドライブ直下に「ExcelTest」というフォルダを作って、配置しました。

f:id:sugimomoto:20210226141654p:plain

なお、Google Driveであれば、Spreadsheetを使うシチュエーションも多いと思います。もし Spreadsheetを読み取りたい場合は、以下のGoogle Sheets Driverを使ってみてください。

https://www.cdata.com/jp/drivers/gsheets/

f:id:sugimomoto:20210226141700p:plain

CData Excel JDBC Driverのインストール

次に今回必要となる CData Excel JDBC Driverをインストール します。

以下のURLから評価版をダウンロードしてください。

https://www.cdata.com/jp/drivers/excel/jdbc/

ダウンロード後「setup.jar」ファイルを実行して、マシンへのインストールを進めます。

f:id:sugimomoto:20210226141706p:plain

インストール後、接続設定を行います。

CData JDBC Driverでは、実行用のファイルである「cdata.jdbc.execel.jar」ファイルを使うことで、接続テストを実施できます。

以下のフォルダに移動して、コマンドプロンプトを立ち上げて

cd C:\Program Files\CData\CData JDBC Driver for Excel 2020J\lib

f:id:sugimomoto:20210226141712p:plain

javaで対象ファイルを立ち上げます。

java -jar cdata.jdbc.excel.jar

すると、以下のような接続テストツールが立ち上がりますので、ここで接続確認を行います。

f:id:sugimomoto:20210226141718p:plain

必要な接続文字列は以下のようになります。

jdbc:excel:AuthScheme="OAuth";URI="gdrive://Excel/text.xlsx";InitiateOAuth="GETANDREFRESH";

プロパティ名 備考
AuthScheme OAuth Google DriverではOAuthによる接続を利用するので、OAuthを指定します。
URI gdrive://Excel/text.xlsx 対象のExcelファイルのパスを指定します。Google Drive用のパスである「gdrive://」に続いて、ファイルパスを入力してください。
InitiateOAuth GETANDREFRESH OAuth接続時にCData Driver本体がAccessToken取得処理を実施するようにGETANDREFRESHを指定します。

f:id:sugimomoto:20210226141725p:plain

必要な接続文字列を入力した状態で「接続テスト」をクリックすることで、ブラウザが立ち上がり、認証プロセスが開始されます。

まず任意のアカウントでログインを行います。

f:id:sugimomoto:20210226141732p:plain

使用中のビルドによっては、以下のようなメッセージが表示される場合があります。その場合は以下のリンクをクリックしてください。

f:id:sugimomoto:20210226141737p:plain

あとは、アクセス許可を確認して、「許可」をクリックします。

f:id:sugimomoto:20210226141744p:plain

「接続テストに成功しました」というメッセージが表示されればOKです。

f:id:sugimomoto:20210226141750p:plain

接続文字列は後で利用するので、控えておきましょう。

f:id:sugimomoto:20210226141756p:plain

DbVizualizerから接続してみる

それでは、DbVisualizerから対象のExcelファイルに接続してみましょう。

まずDbVisualizerを立ち上げて、CData Excel JDBC Driverに接続できるように、jarファイルを登録します。

「Tools」→「Driver Mamanger」に移動し

f:id:sugimomoto:20210226141800p:plain

新しくDriver Settingsを作成して、任意の名称を指定の上、Driver Jar ファイル「C:\Program Files\CData\CData JDBC Driver for Excel 2020J\lib\cdata.jdbc.excel.jar(バージョンによってフォルダパスが異なるので注意)」を登録します。

f:id:sugimomoto:20210226141805p:plain

あとは、新しくDatabase Connectionを作成し、先程接続テストを行った接続文字列をDataBase URLに貼り付ければ準備は完了です。

f:id:sugimomoto:20210226141810p:plain

Table一覧にシート名が表示され、無事Google Drive上のExcelファイルのデータを読み取ることができました。

f:id:sugimomoto:20210226141815p:plain

おわりに

今回の記事ではGoogle DriveのExcelファイルに接続する方法を紹介しましたが、Excel Driverは他のクラウドストレージサービスやHTTP・FTP上のファイルも読み取ることが可能です。

cdn.cdata.com

  • HTTP またはHTTPS
  • Amazon S3
  • Azure Blob Storage
  • Azure Data Lake Store Gen1
  • Azure Data Lake Store Gen2
  • Azure Data Lake Store Gen2 with SSL
  • Google Drive
  • OneDrive
  • Box
  • Dropbox
  • SharePoint Online SOAP
  • SharePoint Online REST
  • FTP またはFTPS
  • SFTP
  • Wasabi
  • Google Cloud Storage
  • Oracle Cloud Storage

もし接続でわからない点があれば、お気軽にテクニカルサポートまで問い合わせしてみてください。

https://www.cdata.com/jp/support/submit.aspx

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。