Załóżmy, że mamy następującą sytuację: Mamy stolik (powiedzmy Table_A), który ma spust INSERT. Zadaniem wyzwalacza jest aktualizacja niektórych wierszy w table_Boparciu o wstawione wartości w table_A. Teraz wszystko jest w porządku, gdy po prostu wstawiamy wiersz do tabeli, ale co z sytuacjami, w których wstawiamy dane poprzez transakcję ?. Czy …
Rozwiązujemy problemy z serwerem o wysokim wykorzystaniu procesora. Po stwierdzeniu, że zapytania tak naprawdę nie były przyczyną, zaczęliśmy szukać kompilacji. Monitor wydajności pokazuje mniej niż 50 kompilacji / sek. I mniej niż 15 rekompilacji / sek. Po uruchomieniu sesji XE w poszukiwaniu kompilacji widzimy tysiące kompilacji na sekundę. Ten system …
Mam system, w którym nie mogę kontrolować projektu niektórych tabel (replikowanych przez Slony-I), więc mam szereg tego, co nazywamy „tabelami cieni”, w których wydobywam niektóre informacje z replikowanych tabel i przechowuj go w przetworzonej formie, której potrzebuję, jednocześnie usuwając rekordy, które chcę zignorować. W tej chwili po skonfigurowaniu nowej repliki …
Mam tabelę konfiguracji w mojej bazie danych SQL Server i ta tabela powinna mieć tylko jeden wiersz. Aby pomóc przyszłym programistom zrozumieć to, chciałbym zapobiec dodawaniu więcej niż jednego wiersza danych. Zdecydowałem się użyć do tego wyzwalacza, jak poniżej ... ALTER TRIGGER OnlyOneConfigRow ON [dbo].[Configuration] INSTEAD OF INSERT AS BEGIN …
Jest to dość powszechna wiedza, którą powinieneś mieć SET NOCOUNT ON domyślnie podczas tworzenia nowych procedur przechowywanych. Microsoft zmienił domyślny szablon, aby uwzględnić go w 2012 roku. Pomyślałem, że powinien być taki sam dla wyzwalaczy, ale nie jest on uwzględniony w szablonie. Czy jest to celowe czy tylko niedopatrzenie?
Scenariusz: Mamy dwie tabele Tbl1i Tbl2na serwerze subskrybenta. Tbl1Jest replikowane z Wydawcy Server Ai ma dwa spusty - wstaw i aktualizacji. Wyzwalacze to wstawianie i aktualizowanie danych Tbl2. Teraz musimy wyczyścić (około 900 milionów rekordów), z Tbl2których łącznie ponad 1000 milionów rekordów. Poniżej przedstawiono rozkład danych z jednego miesiąca do …
Mam małą (~ 10 wierszy) tabelę wywoływaną restrictionsw mojej bazie danych PostgreSQL, w której wartości są codziennie usuwane i wstawiane. Chciałbym mieć tabelę o nazwie restrictions_deleted, w której każdy usuwany wiersz restrictionsbędzie zapisywany automatycznie. Ponieważ restrictionsma identyfikator seryjny, nie będzie duplikatów. Jak napisać taki wyzwalacz w PostgreSQL?
Mam bazę danych ze 104 wyzwalaczami. Czy istnieje sposób, aby usunąć wszystkie wyzwalacze za pomocą jednego polecenia z pojedynczej bazy danych o nazwie „system_db_audits?
Mam wrażliwe kolumny cen, które chciałbym zaktualizować tylko za pomocą procedury składowanej. Chciałbym, aby wszystkie próby zmiany kodu w tych kolumnach cenowych lub ręczne próby zakończyły się niepowodzeniem, jeśli nie używa procedur przechowywanych zaprojektowanych do jego aktualizacji. Rozważam wdrożenie tego przy użyciu wyzwalaczy i tabeli tokenów. Rozważam pomysł posiadania tabeli …
Utworzyłem procedurę przechowywaną w mysql przy użyciu następującej składni. DROP PROCEDURE IF EXISTS `sp-set_comment_count`; DELIMITER $$ CREATE PROCEDURE `sp_set-comment_count` (IN _id INT) BEGIN -- AC - AllCount DECLARE AC INT DEFAULT 0; SELECT COUNT(*) AS ac INTO AC FROM usergroups AS ug LEFT JOIN usergroup_comments AS ugm ON ugm.`gid` = …
Myślałem, że to zostało rozwiązane za pomocą linku poniżej - obejście działa - ale łatka nie. Praca z pomocą techniczną Microsoft w celu rozwiązania. http://support.microsoft.com/kb/2606883 Ok, więc mam problem, który chciałem wyrzucić do StackOverflow, aby sprawdzić, czy ktoś ma pomysł. Uwaga: dotyczy to SQL Server 2008 R2 Problem: Usunięcie 3000 …
Mam 10 procedur przechowywanych i każda z nich wstawia INSERT do jednej tabeliX. Czy w ciele wyzwalacza tableX można uzyskać, który obiekt powoduje modyfikację tableX (przechowywany proc1 lub sp2 lub ....)? Dziękuję Ci.
Pracuję na SQL Server 2008 R2. Mam korzyść tabeli, która ma wyzwalacz PO WSTAWIENIU , AKTUALIZACJI o nazwie tiu_benefit . Chcę napisać instrukcję UPDATE dla tej tabeli, aby zaktualizować 1 wiersz, ale nie chcę, aby wyzwalacz zadziałał. Wiem, że mogę wyłączyć wyzwalacz przed UPDATE, a następnie włączyć wyzwalacz po UPDATE: …
Zastanawiam się, czy można zaktualizować definicję wyzwalacza w MySQL. Na przykład mam wyzwalacz T i chcę dodać do niego nowe funkcje. Zakładam, że muszę to upuścić i odtworzyć. Jakie są najlepsze praktyki w administrowaniu bazą danych dla takich scenariuszy?
Chcę uruchomić wyzwalacz, aby zapisać czas każdej aktualizacji jako: CREATE TRIGGER col_update AFTER UPDATE ON col FOR EACH ROW BEGIN UPDATE col SET updated=NOW() WHERE id=NEW.id; // or OLD.id END Problem polega na tym, że gdy ten wyzwalacz próbuje zaktualizować updatedkolumnę, jest to również inne zdarzenie aktualizacji, które uruchamia wyzwalacz. …
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.