最近、Salesforce ODBCドライバーの顧客がサポートチームに連絡して、SQLServerBLOBデータをSalesforceに挿入する方法を尋ねました。データのソースはクエリの結果でした。このブログはその解決策を共有しています。
このソリューション例では、INSERTINTOステートメントのソースは次のテーブルでした。
create table NewProducts ( "Name" nvarchar(30), ProductCode nvarchar(10), Description nvarchar(max)) insert into NewProducts values ( 'Easysoft ODBC-Salesforce Driver', 'EAS01', 'ODBC Driver for Salesforce.com. Available for Linux, Unix and Windows.' ) insert into NewProducts values ( 'Easysoft ODBC-SQL Server Driver', 'EAS02', 'ODBC Driver for SQL Server. Available for Linux, Unix and Windows.' ) insert into NewProducts values ( 'Easysoft ODBC-Oracle Driver', 'EAS03', 'ODBC Driver for Oracle. Available for Linux, Unix and Windows.' ) select * from NewProducts
このSQLServerテーブルのデータをSalesforceに挿入するには、次のコマンドを実行しました。
declare @Name nvarchar(30) declare @ProductCode nvarchar(10) declare @Description nvarchar(max) declare ins_cursor cursor for select "Name", ProductCode, Description from NewProducts open ins_cursor fetch next from ins_cursor into @Name, @ProductCode, @Description while @@FETCH_STATUS=0 Begin exec ('insert into Product2 ( "Name", ProductCode, Description ) Values (?, ?, ?)', @Name, @ProductCode, @Description ) at MySalesforceLinkedServer fetch next from ins_cursor into @Name, @ProductCode, @Description End close ins_cursor deallocate ins_cursor
関連項目
- SalesforceでSQLServerを使用するためのヒント
- SQLServerからSalesforce.comにラージオブジェクトデータを挿入する