Mam procedurę składowaną, która zawiera logikę biznesową. Wewnątrz mam około 1609 zmiennych (nie pytaj mnie dlaczego, tak działa silnik). Próbuję SETzmiennej do połączonej wartości wszystkich innych zmiennych. W rezultacie podczas tworzenia pojawia się błąd: Msg 8631, poziom 17, stan 1, procedura XXX, wiersz RRRR Błąd wewnętrzny: Osiągnięto limit stosu serwera. …
Miałem wrażenie, że gdybym zsumował DATALENGTH()wszystkie pola dla wszystkich rekordów w tabeli, uzyskałbym całkowity rozmiar tabeli. Czy się mylę? SELECT SUM(DATALENGTH(Field1)) + SUM(DATALENGTH(Field2)) + SUM(DATALENGTH(Field3)) TotalSizeInBytes FROM SomeTable WHERE X, Y, and Z are true Użyłem tego zapytania poniżej (które dostałem z Internetu, aby uzyskać rozmiary tabel, tylko indeksy klastrowe, …
Obserwujemy bardzo wysokie typy oczekiwania PAGELATCH_EX i PAGELATCH_SH oraz wysokie oczekiwania WRITELOG. Zdiagnozowałem zapytanie powodujące, że PAGELATCH czeka i mogę je wyeliminować, zmniejszając szybkość wstawiania do zajętego klucza podstawowego klastrowanego zdefiniowanego wartością TOŻSAMOŚĆ. Rozumiem, że to zjawisko jest znane jako rywalizacja o zatrzask wstawiania ostatniej strony. Jednak moje pytanie brzmi: …
Gdy indeks jest wyłączony, definicja pozostaje w katalogu systemowym, ale nie jest już używana. SQL Server nie utrzymuje indeksu (ponieważ dane w tabeli się zmieniają), a indeksu nie można użyć do zaspokojenia zapytań. Jeśli indeks klastrowany jest wyłączony, cała tabela staje się niedostępna. Dlaczego nie można uzyskać dostępu do danych …
Pytanie, które pojawiło się podczas dyskusji na czacie: Wiem, że skróty łączą pakiety ratunkowe wewnętrznie do czegoś w rodzaju zagnieżdżonych pętli. Co robi SQL Server dla ratowania agregacji skrótów (jeśli w ogóle może się to zdarzyć)?
Moje pytanie brzmi: w jaki sposób SQL Server obsługuje zapytanie, które wymaga pobrania większej ilości danych do pamięci podręcznej bufora niż dostępna jest przestrzeń? Ta kwerenda zawierałaby wiele złączeń, więc zestaw wyników nie istnieje w tym formacie już na dysku i trzeba by skompilować wyniki. Ale nawet po kompilacji nadal …
Nawet po przeczytaniu Przewodnika wydajności ładowania danych nadal nie jestem pewien, czy konieczne jest dodanie podpowiedzi do tabeli TABLOCK do pustej tabeli tymczasowej, zdefiniowanej za pomocą indeksu klastrowego, aby uzyskać minimalne rejestrowanie. Oczywiście tabela temp jest tworzona w TempDB, który działa w trybie odzyskiwania SIMPLE, więc pomyślałbym, że jest idealnym …
Mamy SQL Server 2016 SP1 z maksymalną pamięcią ustawioną na 24 GB. Ten serwer ma dużą liczbę kompilacji, tylko 10% tych kompilacji pochodzi z zapytań Ad-Hoc. Nowo skompilowane plany powinny być przechowywane w pamięci podręcznej planu, ale wielkość pamięci podręcznej planu nie rośnie (około 3,72 GB). Podejrzewam, że istnieje lokalna …
Dla przykładowej bazy danych AdventureWorks zapytanie poniżej: SELECT P.ProductID, CA.TransactionID FROM Production.Product AS P CROSS APPLY ( SELECT TOP (1) TH.TransactionID FROM Production.TransactionHistory AS TH WHERE TH.ProductID = P.ProductID ORDER BY TH.TransactionID DESC ) AS CA; Planu pokazuje wykonanie Szacowany koszt operatora od 0.0850383 (93%) dla indeksu Szukajcie : Koszt …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.