Прямая передача данных из SQL в онлайн-сервис Power BI с использованием PowerShell или других опций - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть задание настроить плитку онлайн-службы Power BI в режиме реального времени с использованием потоковой передачи данных из таблицы SQL.Данные в таблице обновляются каждые несколько секунд.Вот что я получил до сих пор, используя PowerShell.

Но, похоже, он не обновляет набор данных каждые несколько секунд.Чего мне не хватает?

DO
        {   
        $SqlServer = 'ServerName';
        $SqlDatabase = 'DBName';
        $sleepDuration = 3
        $SqlConnectionString = 'Data Source={0};Initial Catalog={1};Integrated Security=SSPI' -f $SqlServer, $SqlDatabase;
        $SqlQuery = "SELECT * FROM MyTable;";

        $SqlCommand = New-Object -TypeName System.Data.SqlClient.SqlCommand;
        $SqlCommand.CommandText = $SqlQuery;
        $SqlConnection = New-Object -TypeName System.Data.SqlClient.SqlConnection -ArgumentList $SqlConnectionString;
        $SqlCommand.Connection = $SqlConnection;

        $SqlConnection.Open();
        $SqlDataReader = $SqlCommand.ExecuteReader();

        ##you would find your own endpoint in the Power BI service
        $endpoint = "......My PowerBI Service Push URL.........."



        #Fetch data and write out to files
        while ($SqlDataReader.Read()) {
             $payload =  
            @{
            "Col1" =$SqlDataReader['Col1']
            "Col2" =$SqlDataReader['Col2']

                } 
            Invoke-RestMethod -Method Post -Uri "$endpoint" -Body (ConvertTo-Json @($payload))
         # Sleep for a second
            Start-Sleep $sleepDuration
        }
        $SqlConnection.Close();
        $SqlConnection.Dispose();

        } While (1 -eq 1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...