Ce blog fournit un exemple de transfert de données d'une table SQL Server locale vers Salesforce. Nous utilisons le pilote ODBC Salesforce.com pour insérer trois enregistrements dans la table Salesforce Product2.
- Configurer un serveur lié qui se connecte à Salesforce.
- Dans SQL Server Management Studio, modifiez Serveur lié> Propriétés du serveur lié> Options du serveur> Sortie RPC paramètre sur Vrai.
- Créez cette table dans SQL Server :
create table NewProducts ( "Name" nvarchar(30), ProductCode nvarchar(10), Description nvarchar(max)) insert into NewProducts values ( 'Test1', 'TEST01', 'Test 1st description') insert into NewProducts values ( 'Test2', 'TEST02', '2nd description' ) insert into NewProducts values ( 'Test3', 'TEST03', '3rd Test description')
Vous pouvez insérer des données dans n'importe quelle colonne de la table Product2, en supposant que vous disposez des autorisations nécessaires.
- Exécutez le SQL suivant :
-- Declare a variable for each column you want to insert: declare @Name nvarchar(30) declare @ProductCode nvarchar(10) declare @Description nvarchar(max) -- Use a cursor to select your data, which enables SQL Server to extract -- the data from your local table to the variables. declare ins_cursor cursor for select "Name", ProductCode, Description from NewProducts open ins_cursor fetch next from ins_cursor into @Name, @ProductCode, @Description -- At this point, the data from the first row -- is in your local variables. -- Move through the table with the @@FETCH_STATUS=0 while @@FETCH_STATUS=0 Begin -- Execute the insert to push this data into Salesforce. Replace "SF_LINK" with the name of your Salesforce Linked Server. exec ('insert into Product2 ( "Name", ProductCode, Description ) Values (?, ?, ?)', @Name, @ProductCode ,@Description ) at SF_LINK -- Once the execution has taken place, you fetch the next row of data from your local table. fetch next from ins_cursor into @Name, @ProductCode, @Description End -- When all the rows have inserted you must close and deallocate the cursor. -- Failure to do this will not let you re-use the cursor. close ins_cursor deallocate ins_cursor
Voir aussi
- Conseils pour utiliser SQL Server avec Salesforce