sql >> Base de Datos >  >> RDS >> Sqlserver

Actualización de datos de Salesforce con un cursor de SQL Server

Los clientes de Easysoft utilizan nuestro controlador ODBC de Salesforce.com para trabajar con datos de Salesforce.com en SQL Server. El siguiente ejemplo muestra cómo actualizar un registro de Salesforce desde SQL Server usando un cursor:

  1. Configure un servidor vinculado que se conecte a Salesforce.
  2. Cambie el Servidor vinculado> Propiedades del servidor vinculado> Opciones del servidor> Salida RPC configurando en Verdadero.
  3. Adapte y luego ejecute el siguiente SQL:
    -- This example changes the name of an account to 'GenePoint Inc'.
    DROP TABLE Account
    SELECT * INTO ACCOUNT FROM OPENQUERY(SFLINKEDSERVER,'SELECT ID, NAME FROM Account
                                         WHERE Id=''001i000000AOq3DAAT''')
    SELECT * FROM ACCOUNT
    UPDATE ACCOUNT SET [Name]='GenePoint Inc'
    SELECT * FROM ACCOUNT
    
    DECLARE @Id NVARCHAR(18)
    DECLARE @Name NVARCHAR(255)
    DECLARE @SQL NVARCHAR(MAX)
    
    DECLARE LocAccCur CURSOR FOR SELECT Id, REPLACE([Name],'''', '''''') FROM Account
    OPEN LocAccCur
    FETCH NEXT FROM LocAccCur INTO @Id, @Name
    WHILE @@FETCH_STATUS = 0
    BEGIN
        PRINT 'Id : ' + @Id
        PRINT 'Name : ' + @Name
        SELECT @SQL='UPDATE Account SET [Name]='''+@Name+''' WHERE Id='''+@Id+''''
        EXEC(@SQL) at SFLINKEDSERVER
        FETCH NEXT FROM LocAccCur INTO @Id, @Name
    END
    CLOSE LocAccCur
    DEALLOCATE LocAccCur
    

Ver también

  • Consejos para usar SQL Server con Salesforce