Jeśli wykonuję pojedyncze wywołanie bazy danych SQL Server za pośrednictwem sieci o dużym opóźnieniu, czy z powodu tego opóźnienia wystąpią blokady tabeli? Powiedzmy, że pytam o tabelę A o niektóre rekordy, a SQL Server musi zwrócić te dane w wolnej sieci - czy w tabeli A pojawi się blokada odczytu, …
To skromne pytanie zadane w duchu pogłębiania mojej wiedzy; uprzejmie bądź łagodny w swojej odpowiedzi. Jako programista aplikacji od dłuższego czasu wiem na pewnym poziomie, czym jest transakcja (używam ich cały czas). Pomijając chwilowe poziomy izolacji transakcji, na wysokim poziomie transakcja pozwala na całkowite lub całkowite ukończenie bloku pracy i …
Zapytanie sys.dm_tran_locksDMV pokazuje nam, które sesje (SPID) blokują zasoby, takie jak tabela, strona i wiersz. Czy dla każdej nabytej blokady jest jakiś sposób ustalenia, która instrukcja SQL (usuń, wstaw, aktualizuj lub wybierz) spowodowała tę blokadę? Wiem, że most_recent_query_handlekolumnasys.dm_exec_connections DMV podaje nam tekst ostatnio wykonanego zapytania, ale kilka razy inne zapytania …
Próbowałem odpowiedzieć na następujące pytanie dotyczące przepełnienia stosu: Jakiego sposobu blokowania SQL Server 2005/2008 należy użyć do przetwarzania pojedynczych wierszy tabeli w wielu instancjach aplikacji serwera? Po opublikowaniu dość naiwnej odpowiedzi, pomyślałem, że położyłem pieniądze tam, gdzie były moje usta i faktycznie przetestowałem sugerowany scenariusz, aby upewnić się, że nie …
W naszej bazie danych istnieje duża tabela, która mniej więcej wygląda tak: CREATE TABLE dbo.production_data ( pd_id BIGINT PRIMARY KEY, serial NVARCHAR(16) NOT NULL UNIQUE, ... ); ale teraz rozmiar pola szeregowego stał się zbyt niski, więc chcę go zmienić na 32. Narzędzie porównywania schematów programu Visual Studio sugeruje wykonanie …
Jestem bardzo nowy w SQL Server i chciałbym zrozumieć, czy poniższa, bardzo prosta selectinstrukcja zabierze jakieś blokady. Select * from Student; Proszę rozważyć przypadek, w którym instrukcja nie działałaby w begin tranbloku.
Problem Mam parę zapytań, które przy szeregowej izolacji powodują blokadę RX-X. Jednak gdy używam zdarzeń rozszerzonych do oglądania akwizycji blokady, akwizycja blokady RX-X nigdy się nie pojawia, jest ona tylko zwolniona. Skąd to pochodzi? Repro Oto mój stół: CREATE TABLE dbo.LockTest ( ID int identity, Junk char(4) ) CREATE CLUSTERED …
Bardzo początkujący w pracy z DB, więc doceń swoją cierpliwość w kwestii podstawowego pytania. Korzystam z programu SQL Server 2014 na moim komputerze lokalnym i mam małą tabelę oraz podstawową aplikację kliencką do testowania różnych metod. Dostaję coś, co wydaje się być blokadą tabeli podczas obu INSERT INTOi UPDATEinstrukcji. Klient …
Rozglądam się teraz, czytając stronę mysql i nadal nie widzę dokładnie, jak to działa. Chcę wybrać i zablokować wiersz do zapisu, zapisać zmianę i zwolnić blokadę. audocommit jest włączony. schemat id (int) name (varchar50) status (enum 'pending', 'working', 'complete') created (datetime) updated (datetime) Wybierz element ze stanem oczekującym i zaktualizuj …
Mam wybór w SQL SERVER, który blokuje całą tabelę. Oto skrypt instalacyjny (upewnij się, że niczego nie zastąpisz) USE [master] GO IF EXISTS(SELECT 1 FROM sys.databases d WHERE d.name = 'LockingTestDB') DROP DATABASE LockingTestDB GO CREATE DATABASE LockingTestDB GO USE [LockingTestDB] GO IF EXISTS(SELECT 1 FROM sys.tables t WHERE t.name …
Mam 2 zapytania, które uruchamiane w tym samym czasie powodują impas. Zapytanie 1 - zaktualizuj kolumnę zawartą w indeksie (indeks 1): update table1 set column1 = value1 where id = @Id Bierze X-Lock na stole 1, a następnie próbuje X-Lock na indeksie 1. Zapytanie 2: select columnx, columny, etc from …
Rozwiązuję problem zakleszczenia, gdy zauważyłem, że zachowanie blokady jest inne, gdy korzystam z indeksu klastrowego i nieklastrowanego w polu id. Wydaje się, że problem zakleszczenia został rozwiązany, jeśli do pola id zostanie zastosowany indeks klastrowany lub klucz podstawowy. Mam różne transakcje, które wykonują jedną lub więcej aktualizacji dla różnych wierszy, …
Jak poprawnie wdrożyć optymistyczne blokowanie w MySQL? Nasz zespół wydedukował, że musimy zrobić nr 4 poniżej, w przeciwnym razie istnieje ryzyko, że inny wątek może zaktualizować tę samą wersję rekordu, ale chcielibyśmy potwierdzić, że jest to najlepszy sposób. Utwórz pole wersji w tabeli, w której chcesz użyć blokowania optymistycznego, np. …
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.