製品をチェック

無償トライアル:

無償トライアルへ

製品の情報と無償トライアルへ:

SFTP ADO.NET Provider

.NET アプリケーションからリモートファイルやディレクトリに簡単にアクセス。

データ連携でお困りですか?

お問い合わせ

PowerBuilder からSFTP データに接続してみた


この記事ではCData ADO.NET Provider for SFTP を使ってPowerBuilder からSFTP にアクセスする方法を説明します。


加藤龍彦
ウェブデベロッパー

sftp ロゴ画像

ADO.NET Adapter

ado ロゴ画像

PowerBuilder

CData ADO.NET providers は、PowerBuilder を含むMicrosoft .NET をサポートするあらゆるプラットフォームまたは開発テクノロジーから使用できる、使いやすい標準準拠のデータプロバイダーです。 この記事では、CData ADO.NET Provider for SFTP をPowerBuilder で使う方法について説明します。

CData ADO.NET Provider for SFTP を使ってデータを取得し読み書きを実行する基本的なPowerBuilder アプリケーションを作成する方法について説明します。

  1. 新規WPF Window Application ソリューションで、接続プロパティに必要なすべてのビジュアルコントロールを追加します。一般的な接続文字列は次のとおりです:

    RemoteHost=MyFTPServer;

    FTP は、SFTP プロトコルを使用してSFTP サーバーとの間のファイル転送を行います。接続するにはRemoteHost を指定します。FTP はUser、Password、および公開鍵認証(SSHClientCert)を使用します。 SSHAuthMode を選択し、選択に基づいて接続値を指定します。

    次の接続プロパティを設定し、ファイルシステムのリレーショナルビューをコントロールします。

    • RemotePath: 現在の作業ディレクトリに設定。
    • TableDepth: ビューとしてレポートするサブフォルダの深度を制御するために設定。
    • FileRetrievalDepth: ファイルを再帰的に取得し、Root テーブルにリストするために設定。
    ストアドプロシージャは、ファイル、のダウンロード、アップロード、およびプロトコルコマンドの送信に利用できます。SQL を使用してサーバーと対話する方法の詳細については、ヘルプドキュメントの「データモデル」を参照してください。

  2. .NET コントロールからDataGrid コントロールを追加します。
  3. DataGrid コントロールのカラムを設定します。Account テーブルからいくつかのカラムを以下に示します: <DataGrid AutoGenerateColumns="False" Margin="13,249,12,14" Name="datagrid1" TabIndex="70" ItemsSource="{Binding}"> <DataGrid.Columns> <DataGridTextColumn x:Name="idColumn" Binding="{Binding Path=Id}" Header="Id" Width="SizeToHeader" /> <DataGridTextColumn x:Name="nameColumn" Binding="{Binding Path=Filesize}" Header="Filesize" Width="SizeToHeader" /> ... </DataGrid.Columns> </DataGrid>
  4. CData ADO.NET Provider for SFTP アセンブリへの参照を追加します。

DataGrid 接続

ビジュアルエレメントが設定されたら、Connection、Command、およびDataAdapter のような標準のADO.NET オブジェクトを使ってSQL クエリの結果をDataTable に表示することができます:

System.Data.CData.SFTP.SFTPConnection conn conn = create System.Data.CData.SFTP.SFTPConnection(connectionString) System.Data.CData.SFTP.SFTPCommand comm comm = create System.Data.CData.SFTP.SFTPCommand(command, conn) System.Data.DataTable table table = create System.Data.DataTable System.Data.CData.SFTP.SFTPDataAdapter dataAdapter dataAdapter = create System.Data.CData.SFTP.SFTPDataAdapter(comm) dataAdapter.Fill(table) datagrid1.ItemsSource=table.DefaultView

上のコードは、指定したクエリからDataGrid にデータをバインドできます。