Zmienne skryptu Direct Query
Możesz użyć zmiennych skryptu do opisywania i manipulowania wewnętrzną strukturą aplikacji Direct Query.
Użyj menu rozwijanego, aby zobaczyć krótki opis i składnię każdej zmiennej.
Ta zmienna pozwala aplikacji określić wiek, po osiągnięciu którego zbuforowany wynik zapytania zostanie uznany za nieaktualny.
Wiek jest liczony od momentu pierwszego zbuforowania wyniku. Jeśli wiek zbuforowanego wyniku jest większy lub równy n sekund, jest on uważany za nieaktualny i nie jest używany jako zbuforowany wynik dla pasującego zapytania. Zamiast tego dane zapytanie zostanie wykonane tak, jakby nie istniał żaden zbuforowany wynik.
Gdy zapytanie zostanie wykonane ponownie, jego nowy wynik może zostać zbuforowany, w zależności od bieżącego stanu pamięci podręcznej i pamięci operacyjnej. Jeśli zostanie zbuforowany, ponownie zaczyna się starzeć, aż stanie się nieaktualny po n sekundach.
Domyślna wartość tej zmiennej to 30. Oznacza to, że zbuforowany wynik zapytania jest uważany za nieaktualny po 30 sekundach.
| Wartość | Opis |
|---|---|
| -1 |
To ustawienie oznacza, że pamięć podręczna jest zachowywana przez czas zalogowania użytkownika. |
| 0 |
Buforowanie jest całkowicie wyłączone. |
| 1-9,223,372,036,854,775,807 | Ustawia wiek nieaktualności zbuforowanego wyniku w sekundach. |
| > 9,223,372,036,854,775,807 | Działa tak samo, jak ustawienie zmiennej na 30. |
DirectQueryResultCacheExpirySeconds=n;
Domyślna wartość maksymalnej liczby wierszy pobieranych dla większości wykresów z Direct Query jest sterowana przez zapytanie klienta i może wynosić od 256 do 1000. Wyjątkiem są wykresy punktowe, w przypadku których domyślne maksimum jest stałe i wynosi 2500. Oznacza to, że niektóre wykresy obsługiwane przez Direct Query nie pokażą więcej niż n wyników wierszy, nawet jeśli nielimitowane zapytanie SQL dla zawartości wykresu dałoby w wyniku więcej niż n wierszy.
Zmienna skryptu DirectQueryRowFetchMaxCount istnieje, aby umożliwić zwiększenie lub ograniczenie maksymalnej liczby wierszy do wyświetlenia na wykresie tabeli lub ograniczenie maksymalnej liczby wyników wyświetlanych na wykresie punktowym do wartości mniejszej niż domyślne maksimum wynoszące 2500.
Dodatkowo w przypadku DirectQueryRowFetchMaxCount należy wziąć pod uwagę następujące kwestie:
-
Domyślna wartość DirectQueryRowFetchMaxCount to -1 (co oznacza, że nie jest używana).
-
Ustawienie zmiennej skryptu DirectQueryRowFetchMaxCount na określoną wartość większą niż 0 pozwala zapytaniu wypełniającemu wykres tabeli na pobranie do DirectQueryRowFetchMaxCount wierszy z bazy danych - aż do maksymalnych wartości przedstawionych w poniższej tabeli.
-
Jeśli DirectQueryRowFetchMaxCount jest skonfigurowana na wartość od 0 do 2500, to wartość DirectQueryRowFetchMaxCount będzie również używana do ograniczenia maksymalnej liczby wierszy danych pobieranych do wypełnienia wykresu punktowego.
-
Aby cofnąć efekty działania zmiennej skryptu DirectQueryRowFetchMaxCount, zmienna ta może być niezdefiniowana lub jawnie ustawiona na wartość -1.
| Wartość | Opis |
|---|---|
| 0 |
Wartość 0 jest wartością specjalną, która wpływa tylko na pobieranie wierszy wykresu tabeli. To ustawienie dynamicznie dzieli na strony wszystkie odpowiednie wiersze (zgodnie z selekcjami) w celu wypełnienia wykresu tabeli. Określenie maksymalnej łącznej liczby wierszy dla stronicowania odbywa się poprzez wykonanie początkowego zapytania zliczającego w celu ustalenia, ile wierszy łącznie zwróci zdalna baza danych dla zapytania wypełniającego tabelę. Ustawienie tej zmiennej na 0 spowoduje, że wszystkie inne obsługiwane wykresy Direct Query (z wyjątkiem tabel i wykresów punktowych) pobiorą domyślną, określoną przez klienta maksymalną liczbę wierszy. Wykresy punktowe pobiorą domyślne maksimum wynoszące 2500 wierszy. InformacjaPonieważ wykonuje to dwa zapytania dla każdego ładowania lub selekcji zamiast jednego, może to być bardziej kosztowne pod względem wydajności bazy danych i kosztów.
|
| 1-100,000 | Ustawia maksymalną liczbę wierszy do pobrania dla tabeli lub wykresu punktowego ze zdalnej bazy danych. Należy pamiętać, że wykres punktowy nigdy nie pobierze więcej niż 2500 wierszy do wyświetlenia. |
| > 100,000 | Taki sam efekt jak ustawienie zmiennej na 0. |
DirectQueryRowFetchMaxCount=n;