Salesforce ODBC-drivrutinen gör att du kan arbeta med Salesforce-data från Oracle® som om Salesforce-data var lokal Oracle®-data. Du kan göra detta från Oracle® som körs på både Windows och icke-Windows-plattformar.
Den här bloggen delar en lösning för ett problem som en av våra kunder upplevde när de försökte uppdatera ett Salesforce-objekt från Oracle®. Felet kunden fick var:
"ORA-02070: database SF does not support some function in this context"
Kunden försökte uppdatera denna Salesforce-data:
SQL> select "Type" from Account@SF where "Id"='001w000001CKeM8AAL';
Type
--------------------------------------------------------------------------------
Customer - Channel 2
SQL> update Account@SF set "Type"='Customer - Channel 3' where
"Id"='001w000001CKeM8AAL';
update Account@SF set "Type"='Customer - Channel 3' where
"Id"='001w000001CKeM8AAL'
*
ERROR at line 1:
ORA-02070: database SF does not support some function in this context
Lösningen var att använda en SQL-sats som går igenom:
SQL> DECLARE 2 cr NUMBER; 3 rs NUMBER; 4 BEGIN 5 cr := DBMS_HS_PASSTHROUGH.OPEN_CURSOR@SF; 6 DBMS_HS_PASSTHROUGH.PARSE@SF(cr,'update Account set "Type"=''Customer - Channel 3'' where "Id"=''001w000001CKeM8AAL'' '); 7 rs := DBMS_HS_PASSTHROUGH.EXECUTE_NON_QUERY@SF (cr); 8 DBMS_HS_PASSTHROUGH.CLOSE_CURSOR@SF(cr); 9 END; 10 / PL/SQL procedure successfully completed. SQL> select "Type" from Account@SF where "Id"='001w000001CKeM8AAL'; Type -------------------------------------------------------------------------------- Customer - Channel 3 SQL>