sql >> Databáze >  >> RDS >> Sqlserver

Vkládání dat velkých objektů do Salesforce.com ze serveru SQL

Zákazníci Easysoftu používají náš Salesforce.com ODBC Driver k práci s daty Salesforce.com na SQL Serveru. Potíže nastávají, když se zákazníci pokoušejí vložit data velkých objektů do Salesforce.com ze serveru SQL. Například při pokusu o vložení dat do pole popisu Produkt2:

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."

Toto INSERT se nezdaří, jak ukazuje výsledná chybová zpráva. Zdá se, že základní problém spočívá v tom, že u některých metod INSERT nelze aktualizovat pole LONGVARCHAR/LONGNVARCHAR ze serveru SQL Server při použití propojeného serveru založeného na ODBC. (Problémové pole Popis je TEXTAREA Salesforce.com, kterou ovladač ODBC Salesforce.com hlásí serveru SQL Server jako LONGNVARCHAR.)

Jediný způsob, jak jsme zjistili, jak vložit data velkých objektů do Salesforce.com, je:

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

Tato metoda je pravděpodobně úspěšná, protože vrstva v SQL Server, která objekty pro vkládání dat LONGVARCHAR není použita. (Ačkoli tato metoda stále používá propojený server, a tedy ovladač ODBC Salesforce.com.)

Viz také

  • Tipy pro používání serveru SQL Server se službou Salesforce
  • Použití INSERT INTO ze serveru SQL ke změně dat Salesforce

  1. Nastavení hodnot sloupců jako názvů sloupců ve výsledku dotazu SQL

  2. Uzamknout pro SELECT, aby jiný proces nezískal stará data

  3. SQL LIKE operátor pro začátečníky

  4. Podporuje Python připravené příkazy MySQL?