Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Einfügen von SQL Server-Daten in Salesforce.com

Nachdem Sie SQL Server mit Salesforce verbunden haben, hängt das Einfügen von Daten vom Salesforce-Datentyp der Zielspalten ab. Beispielsweise sind bei einer einfachen benutzerdefinierten Salesforce-Tabelle mit zwei Textfeldern die beiden folgenden SQL-Anweisungen gültig:

INSERT INTO MYSALESFORCELINKEDSERVER.SF.DBO.Test__c(Name, Mth__c)
VALUES ('Test', 'Jan')

INSERT OPENQUERY (MYSALESFORCELINKEDSERVER, 'SELECT Name, Mth__c FROM Test__c') 
VALUES ('Test 2', 'JAN'); 

Die uns bekannten Salesforce-Datentypen, die einen alternativen Ansatz erfordern, sind Textbereich und Langtextbereich. Zum Beispiel:

INSERT INTO MYSALESFORCELINKEDSERVER.SF.DBO.Product2(Name,Description,Family)
VALUES ('Easysoft ODBC-Oracle Driver', 'ODBC Driver for Oracle 8-12',
        'Easysoft Data Access')

ist eine gültige Einfügeanweisung, schlägt jedoch fehl, weil SQL Server das, was es zu tun versucht, nicht unterstützt:

OLE DB provider "MSDASQL" for linked server "MYSALESFORCELINKEDSERVER" returned
message "Query-based insertion or updating of BLOB values is not supported.".

und Sie müssen eine Alternative verwenden, um dies zu umgehen:

EXEC ('INSERT INTO Product2 ( [Name], ProductCode, [Description] )
VALUES ( ''Easysoft ODBC-Oracle Driver'', ''ODBC Driver for Oracle 8-12'',
         ''Easysoft Data Access'')')
AT MYSALESFORCELINKEDSERVER

Unsere beilagenbezogenen Artikel sind:

  • Tipps zur Verwendung von SQL Server mit Salesforce
  • Einfügen von großen Objektdaten in Salesforce.com von SQL Server
  • Verwenden von INSERT INTO von SQL Server zum Ändern von Salesforce-Daten
  • Beim Einfügen in ein Master-Detail-Salesforce-Feld von SQL Server erhalte ich „Fehler, die von einem mehrstufigen OLE DB-Vorgang generiert wurden“. Was kann ich tun?

Aktualisierungsbeispiele:

  • Aktualisieren von Salesforce-Daten mit einem SQL Server-Cursor