Kod wywoływany zainstalowany w menedżerze baz danych, ujawniający API, za pomocą którego można go wywoływać. Zwykle napisane w natywnym języku zapytań, niektóre platformy DBMS obsługują również inne języki.
Próbuję zrozumieć problem, który mamy z SQL Server 2000. Jesteśmy witryną o umiarkowanie transakcyjnym charakterze i mamy zapisany proces, sp_GetCurrentTransactionsktóry akceptuje ID klienta i dwie daty. Teraz, w zależności od dat i klienta, to zapytanie może zwrócić wszystko od zera do 1000 wierszy. Problem: doświadczyliśmy tego, że nagle dostaniemy szereg …
Mam złożone zapytanie, które uruchamia się w 2 sekundy w oknie zapytania, ale około 5 minut jako procedura przechowywana. Dlaczego uruchomienie procedury przechowywanej trwa tak długo? Oto jak wygląda moje zapytanie. Pobiera określony zestaw rekordów (identyfikowany przez @idi @createdDate) oraz określony przedział czasowy (od 1 roku @startDate) i zwraca skróconą …
Kiedy używam Varchara ze spacjami, ignoruje spacje na końcu. dawny: declare @X varchar(50) To... set @X= 'John' ...jest taki sam jak... set @X= 'John ' Uważa, że są one równe. Jak sprawić, aby system rozpoznał je jako różne?
Co powoduje, że legalne jest przekazywanie nazwy obiektu do procedury przechowywanej w systemie sp_helptext? Jaki mechanizm konwertuje nazwę obiektu na ciąg? na przykład -- works sp_helptext myproc sp_helptext [myproc] sp_helptext [dbo.myproc] -- and behaves the same as a string sp_helptext 'myproc' sp_helptext 'dbo.myproc' -- does not work sp_helptext dbo.myproc -- …
Jednym ze sposobów określenia wykonanej procedury składowanej jest użycie metod „dynamicznego zarządzania”, takich jak: SELECT sqlText.Text, req.* FROM sys.dm_exec_requests req OUTER APPLY sys.dm_exec_sql_text(req.sql_handle) AS sqltext Jednak wyświetla to tylko tekst instrukcji create procedury składowanej. na przykład: CREATE PROCEDURE IMaProcedure @id int AS SELECT * FROM AllTheThings Where id = @id …
Zadanie polegało na wysyłaniu małego miesięcznego raportu do jednego z moich klientów. Raport był wcześniej uruchamiany ręcznie w instancji, dane wyjściowe kopiowane były do arkusza kalkulacyjnego i wysyłane do klienta jako załącznik. Szukam bardziej trwałego rozwiązania, więc zamierzam użyć sp_send_dbmailprocedury składowanej do uruchomienia zapytania i wysłania go jako załącznika. Wszystko …
Korzystam z rekurencyjnej procedury składowanej w MySQL do generowania tabeli tymczasowej o nazwie id_list, ale muszę użyć wyników tej procedury w kolejnym zapytaniu dotyczącym wyboru, więc nie mogę DROPtabeli tymczasowej w ramach procedury ... BEGIN; /* generates the temporary table of ID's */ CALL fetch_inheritance_groups('abc123',0); /* uses the results of …
Musisz wybaczyć mojej naiwności, ponieważ nie jestem DBA, ale rozumiem, że z czasem statystyki zmiany bazy danych i procedura składowana muszą zostać ponownie skompilowane, aby plan kwerendy był aktualny z najnowszymi statystykami. Zakładając, że mam procedurę przechowywaną w mojej bazy danych, która jest zrekompilowane przed najnowszymi statystykami w pewnym regularnych …
Korzystając z SQL Server Profiler (korzystam z SQL Server 2012), próbuję wygenerować użyteczny ślad, który pokazuje wartości parametrów, a nie tylko SQL z nazwami zmiennych. Procedura przechowywana przechodzi przez ogromną ilość danych Inwentaryzacyjnych, aby wygenerować bardzo cenne wyniki, i próbuję udokumentować istniejące zachowanie, więc mogę je przetestować, dokładnie zdefiniować, a …
Zgodnie z ograniczeniami procedur przechowywanych i wyzwalaczy nie można używać dynamicznego narzędzia SQL (ograniczenie zniesione dla procedur przechowywanych w wersji 5.0.13 i nowszych). Dlaczego to ograniczenie obowiązuje? I dlaczego podnosić go dla procedur, ale nie funkcji lub wyzwalaczy?
Słyszałem, że jeden powiedział, że nie chcesz używać dynamicznego SQL. Czy możesz podać konkretny przykład lub przykład z życia? Osobiście koduję go kilka razy w mojej bazie danych. Myślę, że jest OK, ponieważ jest elastyczny. Domyślam się, że chodzi o SQL Injection lub Performance. Coś jeszcze?
SQL Server buforuje tabele tymczasowe utworzone w ramach procedur przechowywanych i po prostu zmienia ich nazwy po zakończeniu procedury, a następnie jej wykonaniu. Moje pytanie dotyczy momentu zwolnienia przestrzeni tempdb. Czytałem, że tabela jest obcinana na końcu procedury . Czytałem w komentarzach, że jest to obsługiwane na podstawie sesji i …
Używam informix ... Nie wiem, jak to zrobiłem, ale w mojej bazie danych są dwie procedury o tej samej nazwie. Kiedy próbuję je usunąć za pomocą DROP PROCEDURE myProc; wtedy pojawia się komunikat o błędzie ERROR: Routine (add_adr_trigger_row) ambiguous - more than one routine resolves to given signature. Error Code: …
Mam procedurę składowaną, która zasadniczo wybiera wartości z jednej tabeli i wstawia je do drugiej, co jest rodzajem archiwizacji. Chcę uniknąć robienia tego przez wiele osób jednocześnie. Podczas gdy ta procedura jest uruchomiona, nie chcę, aby ktokolwiek mógł ją uruchomić, jednak nie chcę serializacji, druga osoba uruchomi procedurę po jej …
To jest niewygodna opcja; nie ma dokumentacji i wyszukiwania w sieci nie są pomocne. Podczas wykonywania zapytań nie zauważam różnicy między opcją zaznaczoną lub niezaznaczoną. Co kontroluje to ustawienie?
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.