ODBC Driver for Workday

Build 22.0.8397

クエリの実行

このセクションでは、SQL Server に接続可能なあらゆるツールからリンクサーバーへクエリを実行する方法を説明します。< p> リンクサーバーからクエリを実行する場合、以下に示すように4部構成の名前フォーマットを使用する必要があります。

[<Linked Server Name>].[<DSN Name>].[<Schema Name (normally but not always the service name)>].[<Table Name>] 
説明
  • Linked Server Name は、作成したリンクサーバーの名前です。
  • DSN Name は、データソースの名前です。
  • Schema Name は、システムスキーマまたはユーザー定義のスキーマの名前です。
  • Table Name は、データのコピー元のテーブルの名前です。

SELECT ステートメント

新しいレコードを作成するには:
SELECT * FROM [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] WHERE Legal_Name_Last_Name = 'Morgan'
データソースが大文字と小文字を区別する識別子をサポートしている場合、大文字と小文字が異なるだけの同名のテーブルを参照することはできないことに注意してください(例:同じスキーマのAccount とACCOUNT)。SQL Server では識別子を大文字と小文字の区別なく扱うため、1つのスキーマに複数存在する同名のテーブルはSQL Server のプロトコルとは根本的に互換性がありません。

INSERT、UPDATE、およびDELETE ステートメント

一行のデータ(つまりレコードのバッチではない)を挿入、更新、または削除するには、4部構成の名前を使用する必要があります。次に例を示します。
INSERT INTO [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] (Legal_Name_Last_Name) VALUES ('Morgan');

バルク操作

バルク操作を実行するには、次のような構文を使用できます:

VALUES リストの代わりに、SELECT クエリを使用してバルクINSERT を実行できます。

INSERT INTO [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] ([Legal_Name_Last_Name])
SELECT [Legal_Name_Last_Name] from [CData].[dbo].[Local_[CData].[Human_Resources].Workers]
ローカルテーブルでJOIN を使用して、バルクUPDATE を実行できます。
UPDATE [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] SET [[CData].[Human_Resources].Workers].[Legal_Name_Last_Name] = CData.dbo.[Local_[CData].[Human_Resources].Workers].[Local_Legal_Name_Last_Name]

FROM CData.dbo.[Local_[CData].[Human_Resources].Workers] INNER JOIN [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] ON CData.dbo.[Local_[CData].[Human_Resources].Workers].[Id] = [[CData].[Human_Resources].Workers].[Id]
sub-SELECT クエリでIN フィルタを使用して、バルクDELETE を実行できます。
DELETE FROM [Linked Server Name].[CData Workday Sys].[Workday].[[CData].[Human_Resources].Workers] WHERE [Id] IN (SELECT [Id] FROM CData.dbo.Local_[CData].[Human_Resources].Workers)

ストアドプロシージャの実行

ストアドプロシージャを実行するには、最初にリンクサーバーの設定でRPC およびRPC Out を有効にする必要があります。続いて、次の一連のコマンドを使用してストアドプロシージャを実行できます。
DECLARE @RunStoredProcSQL VARCHAR(1000);
SET @RunStoredProcSQL = 'EXEC SelectEntries ObjectName=''Account''';
EXEC (@RunStoredProcSQL) AT [Linked Server Name];

Copyright (c) 2022 CData Software, Inc. - All rights reserved.
Build 22.0.8397