Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
gäller för:SQL Server
SSIS Integration Runtime i Azure Data Factory
OLE DB-kommandotransformeringen kör en SQL-instruktion för varje rad i ett dataflöde. Du kan till exempel köra en SQL-instruktion som infogar, uppdaterar eller tar bort rader i en databastabell.
Du kan konfigurera OLE DB-kommandotransformeringen på följande sätt:
Ange SQL-instruktionen som körs av omvandlingen för varje rad.
Ange antalet sekunder innan SQL-instruktionen överskrider tidsgränsen.
Ange standardkodsidan.
Sql-instruktionen innehåller vanligtvis parametrar. Parametervärdena lagras i externa kolumner i transformeringsindata och mappning av en indatakolumn till en extern kolumn mappar en indatakolumn till en parameter. Om du till exempel vill hitta rader i tabellen DimProduct efter värdet i kolumnen ProductKey och sedan ta bort dem, kan du mappa den externa kolumnen med namnet Param_0 till indatakolumnen med namnet ProductKey och sedan köra SQL-instruktionen DELETE FROM DimProduct WHERE ProductKey = ?.. OLE DB-kommandotransformeringen innehåller parameternamnen och du kan inte ändra dem. Parameternamnen är Param_0, Param_1 och så vidare.
Om du konfigurerar OLE DB-kommandotransformeringen med hjälp av dialogrutan Avancerad redigerare kan parametrarna i SQL-instruktionen mappas automatiskt till externa kolumner i transformeringsindata och egenskaperna för varje definierad parameter genom att klicka på knappen Uppdatera . Men om OLE DB-providern som ole db-kommandotransformeringen använder inte stöder härledande parameterinformation från parametern, måste du konfigurera de externa kolumnerna manuellt. Det innebär att du måste lägga till en kolumn för varje parameter i den externa indatan till omvandlingen, uppdatera kolumnnamnen så att de använder namn som Param_0, ange värdet för egenskapen DBParamInfoFlags och mappa indatakolumnerna som innehåller parametervärden till de externa kolumnerna.
Värdet för DBParamInfoFlags representerar parameterns egenskaper. Värdet 1 anger till exempel att parametern är en indataparameter och värdet 65 anger att parametern är en indataparameter och kan innehålla ett null-värde. Värdena måste matcha värdena i OLE DB DB DBPARAMFLAGSENUM-uppräkning. Mer information finns i referensdokumentationen för OLE DB.
OLE DB-kommandotransformeringen innehåller den anpassade egenskapen SQLCommand . Den här egenskapen kan uppdateras av ett egenskapsuttryck när paketet läses in. Mer information finns i Integration Services-uttryck (SSIS),Använda egenskapsuttryck i paket och Transformera anpassade egenskaper.
Den här omvandlingen har en ingång, en vanlig utgång och en felutgång.
Loggning / Skogsavverkning
Du kan logga de anrop som OLE DB-kommandotransformeringen gör till externa dataprovidrar. Du kan använda den här loggningsfunktionen för att felsöka anslutningar och kommandon till externa datakällor som OLE DB-kommandotransformeringen utför. Om du vill logga de anrop som OLE DB-kommandotransformeringen gör till externa dataleverantörer aktiverar du paketloggning och väljer diagnostikhändelsen på paketnivå. Mer information finns i Felsökningsverktyg för paketkörning.
Relaterade uppgifter
Du kan konfigurera omvandlingen med hjälp av SSIS Designer eller objektmodellen. Mer information om hur du konfigurerar den här omvandlingen finns i utvecklarguiden.
Konfigurera OLE DB-kommandotransformeringen
Om du vill lägga till och konfigurera en OLE DB-kommandotransformering måste paketet redan innehålla minst en dataflödesaktivitet och en källa, till exempel en flat filkälla eller en OLE DB-källa. Den här omvandlingen används vanligtvis för att köra parametriserade frågor.
Så här konfigurerar du OLE DB-kommandotransformeringen
I SQL Server Data Tools (SSDT) öppnar du projektet Integration Services som innehåller det paket du vill ha.
Dubbelklicka på paketet i Solution Explorer för att öppna det.
Klicka på fliken Dataflöde och dra sedan OLE DB-kommandotransformeringen till designytan från verktygslådan.
Anslut OLE DB-kommandotransformeringen till dataflödet genom att dra en anslutning, den gröna eller röda pilen, från en datakälla eller tidigare transformering till OLE DB-kommandotransformeringen.
Högerklicka på komponenten och välj Redigera eller Visa avancerad redigerare.
På fliken Anslutningshanterare väljer du en OLE DB-anslutningshanterare i listan Anslutningshanterare . Mer information finns i OLE DB Connection Manager.
Klicka på fliken Komponentegenskaper och klicka på ellipsknappen (...) i rutan SqlCommand .
I Redigeraren för strängvärde skriver du den parameteriserade SQL-instruktionen med ett frågetecken (?) som parametermarkör för varje parameter.
Klicka på Uppdatera. När du klickar på Uppdatera skapar transformeringen en kolumn för varje parameter i samlingen Externa kolumner och anger egenskapen DBParamInfoFlags.
Klicka på fliken Egenskaper för indata och utdata .
Expandera OLE DB-kommandoindata och expandera sedan externa kolumner.
Kontrollera att externa kolumner visar en kolumn för varje parameter i SQL-instruktionen. Kolumnnamnen är Param_0, Param_1 och så vidare.
Du bör inte ändra kolumnnamnen. Om du ändrar kolumnnamnen genererar Integration Services ett verifieringsfel för OLE DB-kommandotransformeringen.
Du bör inte heller ändra datatypen. Egenskapen DataType för varje kolumn är inställd på rätt datatyp.
Om externa kolumner inte visar några kolumner måste du lägga till dem manuellt.
Klicka på Lägg till kolumn en gång för varje parameter i SQL-instruktionen.
Uppdatera kolumnnamnen till Param_0, Param_1 och så vidare.
Ange ett värde i egenskapen DBParamInfoFlags. Värdet måste matcha ett värde i OLE DB DBPARAMFLAGSENUM-uppräkningen. Mer information finns i referensdokumentationen för OLE DB.
Ange datatypen för kolumnen och, beroende på datatypen, ange kodsidan, längden, precisionen och skalan för kolumnen.
Om du vill ta bort en parameter som inte används väljer du parametern i Externa kolumner och klickar sedan på Ta bort kolumn.
Klicka på Kolumnmappningar och mappa kolumner i listan Tillgängliga indatakolumner till parametrar i listan Tillgängliga målkolumner.
Klicka på OK.
Spara det uppdaterade paketet genom att klicka på Spara på Arkiv-menyn .