Stöd för Power BI-gateway och Report Builder för ODBC-datakällor
GÄLLER FÖR: Power BI Report Builder
Power BI Desktop
Den här artikeln beskriver hur du konfigurerar ODBC-datakällor (Open Database Connectivity) i Power BI-gatewayen och hur du använder ODBC-datakällor i Power BI Report Builder.
Både DSN (Data Source Name) och drivrutins anslutningssträng stöds.
Kommentar
Power BI Report Builder är nu 64-bitars och fungerar inte längre med 32-bitarsdrivrutiner. Både Power BI Report Builder och Power BI Gateway kräver 64-bitarsversionen.
Innan du installerar Power BI-gatewayen
Du behöver en Power BI-gatewayversion februari 2021 eller senare. Vi rekommenderar att du installerar gatewayen på en separat dator från Power BI Report Builder eller Power BI Desktop. Det finns vissa scenarier där användning av samma dator kan orsaka problem.
Installera och konfigurera Power BI Report Builder för ODBC-datakälla
Den senaste versionen av Power BI Report Builder innehåller redan ODBC-datatillägget.
- Installera den senaste versionen av Power BI Report Builder.
- Installera den 64-bitars ODBC-drivrutin som du planerar att använda med Power BI Report Builder.
Installera Power BI-gateway, konfigurera ODBC-datakällor
Följ de här stegen för att konfigurera Power BI-gatewayen för ODBC-datakällor.
Ladda ned den senaste Power BI-gatewayen.
Kommentar
Personliga gatewayer stöds inte för sidnumrerade rapporter eftersom de kräver DirectQuery-stöd.
Se artikeln Vad är en lokal datagateway? för information om hur du konfigurerar den.
Installera den 64-bitars ODBC-drivrutin som du planerar att använda på gatewaydatorn.
Kommentar
Fil-DSN stöds inte. Om du vill använda ett DSN skapar du ett 64-bitars system-DSN på gatewaydatorn.
Om du vill konfigurera en ODBC-datakälla i Power BI-tjänst väljer du Hantera anslutningar och gatewayer under Inställningar:
Välj Nytt överst i menyfliksområdet för att lägga till en ny datakälla. Välj sedan Lägg till datakällan>ODBC-datakälltyp:
Klistra in anslutningssträng (System DSN eller drivrutin) och välj en autentiseringsmetod. För ODBC-datakällor stöds följande autentiseringsmetoder:
- Grundläggande
- Windows
När du väljer knappen Lägg till ansluter Power BI-tjänst till ODBC-datakällan med den angivna anslutningssträng och autentiseringsuppgifterna för att verifiera att gatewayen kan ansluta.
ODBC-anslutningssträng exempel
Här följer några ODBC-anslutningssträng exempel för system-DSN, samt olika ODBC-drivrutiner:
- "dsn=Northwind"
- "driver={Microsoft Access Driver (*.mdb, *.accdb)}; dbq=c:\Data\Northwind.mdb"
- "driver={SnowflakeDSIIDriver}; warehouse=DEMO_WH; server=org.snowflakecomputing.com"
- "driver={Amazon Redshift (x64)}; server=org.us-west-2.redshift.amazonaws.com; database=dev"
Vissa drivrutiner och konfigurationer kanske inte stöder alla autentiseringsmetoder.
Förutom att skapa ODBC-datakällor i gatewayen i förväg kan du skapa ODBC-datakällor på begäran när du laddar upp en sidnumrerad rapport. Om det inte finns någon ODBC-datakälla uppmanar uppladdningsprocessen dig att skapa en:
Begränsningar och överväganden
I allmänhet gäller alla begränsningar som gäller för användning av ODBC-datatillägget i Power BI Report Builder för användning av ODBC-datatilläggen i Power BI-gatewayen också.
Nedan följer några av begränsningarna:
För de flesta ODBC-drivrutiner kräver DateTime-parametrar ändringar i kommandotexten i RDL-datauppsättningen för att omvandla ett DateTime-parametervärde till lämpligt format för en viss ODBC-datakälla.
Exempelfråga:
SELECT * FROM DEMO_DB.PUBLIC.DATES WHERE DATE < DATE(?)
Kommentar
Vissa datakällor kan kräva specifik formatering. Du kan använda ett uttryck för att formatera parametern i föregående exempel. Exempel:
=Format(Parameters!Date.Value, "yyyy-MM-dd")
För vissa ODBC-drivrutiner finns det en beteendeskillnad mellan gatewayen och Power BI Report Builder. Detta kan gälla för alla, vissa eller bara en drivrutin. Ett exempel är att Simba-BigQuery-frågan kräver gjutning av parametern om den inte är en strängtyp.
Exempel på felsträng: "En datakälla som används av den här rapporten returnerade ett fel. Ett undantag påträffades vid åtkomst till måldatakällan ERROR [42000] [Simba][BigQuery] (70) Ogiltig fråga: Ingen matchande signatur för operatorn = för argumenttyper: INT64, STRING. Signatur som stöds: ANY = ANY at [2:7]"
Exempelfråga med korrekt gjutning för en INT64-kolumn:
SELECT * FROM 'teamplz.Sample.SampleTable' WHERE DataID=CAST(? as INT64)
Särskilda datatyper som exponeras av en viss ODBC-drivrutin eller serverdel som inte bara mappas till en ADO.Net datatyp stöds inte. Ett exempel är datatypen Snowflake Array.
Scenarier där ODBC-drivrutiner använder lagrade procedurer utan parametrar stöds vanligtvis inte. Amazon Redshift-drivrutinen har dock in-/ut-parametrar som stöds.