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