sql >> データベース >  >> RDS >> Sqlserver

TDSサーバー-Transact-SQL(T-SQL)ステートメントを使用してSQLServerでSalesforceデータを操作する

    Easysoft Salesforce ODBCドライバーを使用すると、リンクサーバーメカニズムを介してSQLServerからSalesforceにアクセスできます。次に、T-SQL、OPENQUERY、またはEXECを使用して、Salesforceデータをクエリおよび更新できます。このリンクタイプは汎用インターフェイスであるODBCを使用するため、T-SQLを使用する場合、リンクサーバーが別のSQLServerインスタンスである場合とはSQLServerの動作が異なります。たとえば、次のようなWHERE句の文字列を使用してクエリを実行する場合:

    SELECT * FROM SALESFORCE.SF.DBO.Account WHERE Id = '0010H00002pXxj6QAC'

    SQL Serverは最初にWHERE句を削除し、SELECT * FROM SALESFORCE.SF.DBO.Accountを送信します。 Salesforceに(結果としてパフォーマンスとSalesforce APIの使用に影響を与えます)、結果セットをローカルでフィルタリングします。

    TDSサーバーを使用すると、非ネイティブのデータアクセスを維持しながら、ネイティブのリンクサーバーによって提供されるT-SQLの最適化を利用できます。

    SQL Serverにとって、TDSServerは別のSQLServerインスタンスです。 Salesforce ODBCドライバーにとって、TDSサーバーはODBCアプリケーションです。コンポーネントは次のとおりです。

    SQL Server <-> TDS Server <-> Salesforce ODBC Driver  <-> Salesforce

    TDSサーバーは開発のベータ段階にあるため、現在EasysoftWebサイトでは利用できません。 TDSサーバーを試してみたい場合は、Easysoftサポートチーム()に連絡して、プログラムのコピーと、TDSサーバーと互換性のあるSalesforceODBCドライバーのバージョンを入手してください。 (つまり、TDSサーバーを使用する前にSalesforceODBCドライバーのバージョンをアップグレードする必要がある場合があります)。

    SalesforceODBCドライバー構成

    • SQLServerがインストールされているマシンにSalesforceODBCドライバーをインストールしてライセンスを取得します。

      現在、Easysoftサポートから指示されたバージョンのSalesforce ODBCドライバーをインストールする必要がありますが、これはEasysoftWebサイトで現在利用可能なバージョンではない可能性があります。

      インストールとライセンスの手順については、SalesforceODBCドライバーのマニュアルを参照してください。

    Salesforce.com ODBCドライバを使用してアプリケーションをSalesforce.comに接続する前に、ODBCデータソースを設定する必要があります。 ODBCデータソースには、ターゲットデータベース(Salesforce.comなど)とそれに接続するために必要なODBCドライバー(Salesforce.com ODBCドライバーなど)の接続の詳細が格納されます。

    ODBCアドミニストレータ(データソースの作成に使用)を実行するには、[Windowsの実行]ダイアログボックスで、次のコマンドを入力します。

    %windir%\system32\odbcad32.exe

    Salesforce.com ODBCドライバーデータソースを作成するには:

    1. ODBC Administratorで、[システムDSN]タブを選択し、[追加]を選択します。
    2. [新しいデータソースの作成]ダイアログボックスで、[Easysoft Salesforce ODBC Driver]を選択し、[完了]を選択します。
    3. Easysoft Salesforce ODBCドライバーDSNセットアップダイアログボックスを完了します:
      設定
      DSN EasysoftSalesforce
      ユーザー名 Salesforce.comユーザーの名前。例:[email protected]
      パスワード Salesforce.comユーザーのパスワード。
      トークン 必要に応じて、Salesforce.comユーザーのセキュリティトークン。

      セキュリティトークンを提供する必要があるかどうかを確認するには、[テスト]ボタンを選択します。 LOGIN_MUST_USE_SECURITY_TOKENを含むエラーで接続の試行が失敗した場合 、1つ提供する必要があります。

      Salesforce.comは、Salesforce.comユーザーアカウントに関連付けられている電子メールアドレスにセキュリティトークンを電子メールで送信します。セキュリティトークンを受け取っていない場合は、再生成できます。その後、Salesforce.comから新しいセキュリティトークンがメールで送信されます。セキュリティトークンを再生成するには、Salesforce.comにログインし、ユーザーメニューから[設定]を選択します。 [クイック検索]ボックスで「セキュリティトークン」を検索します。 [セキュリティトークンのリセット]ページで[セキュリティトークンのリセット]をクリックします。メールクライアントでトークンを受け取ったら、それをコピーして、[トークン]フィールドに貼り付けます。

      カスタムヌル クリックしてこの設定をクリアします。
    4. [テスト]ボタンを使用して、Salesforce.comに正常に接続できることを確認します。

    TDSサーバーの構成

    EasysoftサポートチームからTDSサーバーディストリビューションを入手します()。 SalesforceODBCドライバをインストールしたのと同じマシンにディストリビューションをコピーします。ディストリビューションを実行してTDSサーバーをインストールします。 (これは、管理者として実行しているコマンドプロンプトから実行する必要がある場合があります)。インストールが完了したら、LicenseManagerの実行を選択します。 License Managerプログラムを使用して、TDSサーバーの試用ライセンスを取得します。

    ここで、TDSサーバーを構成する必要があります。使用するODBCデータソースをプログラムに指示します。

    1. Windowsの[スタート]メニューで、[Easysoft]>[TDSSConfig]を選択します。
    2. TDS Configウィンドウの左側のペインで、11433SampleListenerを選択します。
    3. 右側のペインで、[編集]ボタンを選択します。
    4. TargetDSNフィールドの値を、前に構成したSalesforceODBCデータソースの名前に変更します。
    5. 64ビットフィールドの値をYに変更し、[保存]を選択します。既存のエントリを置き換えてサービスを再開するかどうかを確認するメッセージが表示されたら、[はい]を選択します。

    TDSサーバーに接続するリンクサーバーをSQLServerManagement Studio(SSMS)で作成します。

    1. SSMSを起動し、SalesforceにアクセスするSQLServerインスタンスに接続します。
    2. [サーバーオブジェクト]>[リンクサーバー]を右クリックします。次に、[新しいリンクサーバー]を選択します。

      [新しいリンクサーバー]ダイアログボックスが表示されます。

    3. [リンクサーバー]ボックスに、次のように入力します:
      TDSS
    4. [データソース]ボックスに、次のように入力します。
      ip address,11433

      IPアドレスを置き換えます TDSサーバーをインストールしたマシンのIPアドレスを使用します。

    5. Salesforce ODBCデータソースがユーザー名/パスワードを使用してSalesforceで認証する場合(前に示したデータソースの例を参照)、[セキュリティ]タブを選択し、[このセキュリティコンテキストを使用して作成]を選択して、提供されたスペースにSalesforceユーザーのnamaとパスワード。データソースがOAuthを使用して認証する場合は、この手順をスキップしてください。
    6. [OK]を選択します。
    7. サンプルクエリを実行します。例:
      select top 10 * from TDSS.SF.DBO.Account

    1. MySQLで、1つの行をコピーして同じテーブルに挿入できますか?

    2. MySQLが集計関数なしでgroupbyクエリを許可するのはなぜですか?

    3. rewriteBatchedStatements=trueを使用したMySQLおよびJDBC

    4. IS DISTINCTFROMとISNOTDISTINCT FROMを書き直す方法は?