sql >> Databasteknik >  >> RDS >> Sqlserver

Infoga stora objektdata i Salesforce.com från SQL Server

Easysoft-kunder använder vår Salesforce.com ODBC-drivrutin för att arbeta med Salesforce.com-data i SQL Server. Svårigheter uppstår när kunder försöker infoga stora objektdata i Salesforce.com från SQL Server. Till exempel att försöka infoga data i fältet Produkt2-beskrivning:

INSERT OPENQUERY (SALESFORCE, 'SELECT Name, ProductCode, Description FROM Product2')
VALUES ('LongProd', 'LP01', 'My Long Field');
OLE DB provider "MSDASQL" for linked server "SALESFORCE" returned message
"Query-based insertion or updating of BLOB values is not supported."

Denna INSERT misslyckas, vilket indikeras av det resulterande felmeddelandet. Det underliggande problemet verkar vara att för vissa INSERT-metoder kan du inte uppdatera ett LONGVARCHAR/LONGNVARCHAR-fält från SQL Server när du använder en ODBC-baserad länkad server. (Problemfältet, Beskrivning, är en Salesforce.com TEXTAREA, som Salesforce.com ODBC-drivrutinen rapporterar till SQL Server som en LONGNVARCHAR.)

Det enda sättet vi har hittat för att infoga stora objektdata i Salesforce.com är:

EXEC ('INSERT INTO Product2 ( [Name], ProductCode, [Description] )
VALUES ( ''MyProduct'', ''MP01'', ''MyProduct long description'')')
AT MySalesforceLinkedServer

Förmodligen lyckas denna metod eftersom lagret i SQL Server som invänder mot att infoga LONGVARCHAR-data inte används. (Även om den här metoden fortfarande använder en länkad server och därför Salesforce.com ODBC-drivrutinen.)

Se även

  • Tips för att använda SQL Server med Salesforce
  • Använda INSERT INTO från SQL Server för att ändra Salesforce-data

  1. En översikt över VACUUM-bearbetning i PostgreSQL

  2. Hitta poster från en tabell som inte finns i en annan

  3. hur man tilldelar cte-värde till variabel

  4. Rails Console hittar användare efter en mängd ID