Procedury składowane i wyzwalacze

Wielkość: px
Rozpocząć pokaz od strony:

Download "Procedury składowane i wyzwalacze"

Transkrypt

1 ITA-101 Bazy Danych Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Moduł 9 Wersja 1.0 Spis treści... 1 Informacje o module... 2 Przygotowanie teoretyczne... 3 Przykładowy problem... 3 Podstawy teoretyczne... 3 Przykładowe rozwiązanie... 8 Porady praktyczne Uwagi dla studenta Dodatkowe źródła informacji Laboratorium podstawowe Problem 1 (czas realizacji 10 min) Problem 2 (czas realizacji 10 min) Problem 3 (czas realizacji 15 min) Problem 4 (czas realizacji 10 min) Laboratorium rozszerzone... 21

2 Informacje o module Opis modułu W tym module znajdziesz informacje na temat sposobu działania oraz podstaw tworzenia procedur składowanych. Dowiesz się, na czym polega różnica pomiędzy zwykłym zapytaniem T-SQL a procedurą składowaną oraz co to jest kompilacja i rekompilacja procedury. Poznasz również specjalny rodzaj procedury składowanej wyzwalacz. Cel modułu Celem modułu jest zapoznanie czytelnika z procedurami składowanymi oraz wyzwalaczami w środowisku bazodanowym Microsoft SQL Server 2008 oraz zaprezentowanie, jak wykorzystać je w przykładowym projekcie. Uzyskane kompetencje Po zrealizowaniu modułu będziesz: wiedział, jak napisać własną procedurę składowaną umiał rozbudowywać gotowe procedury składowane umiał tworzyć proste wyzwalacze umiał zarządzać wyzwalaczami umiał wykorzystywać wyzwalacze do optymalizacji i automatyzacji działania SQL Server 2008 Wymagania wstępne Przed przystąpieniem do pracy z tym modułem powinieneś: potrafić samodzielnie stworzyć bazę danych wraz z jej obiektami (patrz: moduł 4) znać podstawową składnię języka T-SQL umieć napisać własne zapytania w języku T-SQL (patrz: moduły 5 i 6) znać zaawansowane mechanizmy języka T-SQL (patrz: moduł 8) wiedzieć, na czym polega bezpieczeństwo w bazach danych (patrz: moduł 10) Mapa zależności modułu Zgodnie z mapą zależności przedstawioną na rys. 1, przed przystąpieniem do realizacji tego modułu należy zapoznać się z materiałem zawartym w modułach 3, 5, 6, 8 i 10. Rys. 1 Mapa zależności modułu Strona 2/21

3 Przygotowanie teoretyczne Przykładowy problem Podczas wytwarzania bazy danych wiąże ze sobą grupę osób, do której należą projektant bazy danych, administrator systemu zarządzania bazą danych, administrator bazy danych oraz programista bazy danych. Bardzo ważne jest, żeby wszyscy biorący udział w wytwarzaniu systemu bazodanowego współdziałali ze sobą na różnych etapach. Najwięcej wspólnego z programowaniem w T-SQL ma programista bazy danych. Od niego w dużej mierze zależy, czy wytworzone funkcje, procedury składowane, wyzwalacze i inne element będą działały we właściwy sposób. To on jest odpowiedzialny za przygotowanie odpowiednich elementów programowych, które następnie będzie wykorzystywał projektant aplikacji i programista aplikacji dostępowej. Kolejnym zadaniem jakie stoi przed programistą i administratorem bazy danych jest stworzenie odpowiedniej liczby wyzwalaczy, które są pewnym rodzajem procedur składowanych, z tymże wywoływanych niejawnie. Należy pamiętać, iż użycie procedur składowanych prowadzi do powstania kolejnej warstwy separującej użytkownika końcowego od fizycznych danych, tym samym powodując maskowanie fizycznej struktury bazy. Z tego powodu bardzo ważne jest przemyślane i odpowiednie przygotowanie zbioru procedur składowanych. Podstawy teoretyczne Procedury składowane Procedura składowana (ang. stored procedure) jest nazwanym zbiorem poleceń w języku SQL, który jest przechowywany na serwerze baz danych i jest kompilowany przy pierwszym wykonaniu. Procedury wnoszą do środowiska bazodanowego przetwarzanie warunkowe i możliwości programistyczne. W systemie zarządzania bazami danych wykonanie dowolnego fragmentu kodu języka SQL wiąże się z pewnym ciągiem czynności począwszy od sprawdzenia składni, aż po kompilację i wykonanie. Proces wykonywania zapytania przez SQL Server Proces wykonania pojedynczego zapytania w języku T-SQL w Microsoft SQL Server 2008 dzieli się na następujące etapy: 1. Sprawdzenie i rozdzielenie kodu na fragmenty - dokonywany jest podział kodu na fragmenty nazywane symbolami. Proces ten nazywamy często nazywany jest analizą leksykalną. 2. Sprawdzenie kodu pod względem poprawności semantycznej i syntaktycznej dokonywana jest kontrola poprawności semantycznej, czyli sprawdzenie, czy kod nie odwołuje się do nieistniejących obiektów lub nie używa nieistniejących poleceń oraz kontrola poprawności syntaktycznej, podczas której sprawdzana jest poprawność użytej składni. 3. Standaryzacja wyodrębnionej części kodu silnik wykonywania zapytań zapisuje kod w jednoznacznej postaci (np. usuwa niepotrzebne symbole). 4. Optymalizacja Microsoft SQL Server posiada wewnętrzny proces zwany Optymalizatorem Zapytań, który wybiera optymalny sposób dostępu do danych, tzn. taki plan wykonania zapytania (ang. execution plan), w którym serwer będzie skanował (przeszukiwał) najmniejszą ilość stron danych (o fizycznej strukturze danych w Microsoft SQL Server możesz przeczytać w module 6). Na optymalizację szczególny wpływ ma struktura indeksów oraz sposób łączenia tabel. 5. Kompilacja i wykonanie zapytanie jest kompilowane według optymalnego planu wykonania i w takiej postaci wykonywane. 6. Zwrócenie wyników wyniki zapytania zwracane są do klienta. Strona 3/21

4 Proces wykonywania procedury składowanej Wykonywanie procedur składowanych odbywa się inaczej niż wykonywanie pojedynczego zapytania SQL. Utworzenie i pierwsze wykonanie procedury w Microsoft SQL Server można podzielić na następujące kroki: 1. Utworzenie definicji procedury składowanej wykonywane jest polecenie CREATE PROCEDURE. 2. Sprawdzanie kodu procedury pod względem poprawności dokonywana jest kontrola poprawności syntaktycznej kodu procedury. 3. Zapamiętanie procedury w bazie danych nazwa procedury i jej kod (tzw. ciało procedury) są zapisywane do odpowiednich widoków systemowych bazy danych (sysobjects oraz syscomments). 4. Wywołanie procedury procedura składowana jest wywoływana z odpowiednimi parametrami poleceniem EXEC. 5. Właściwe wykonanie procedury optymalizacja planu wykonania i kompilacja. 6. Buforowanie planu wykonania skompilowany optymalny plan wykonania jest zapisywany w tzw. buforze procedur, skąd jest wczytywany przy następnym wywołaniu procedury. Na rys. 2 pokazano schemat tworzenia i wykonania procedury składowanej w środowisku SQL Server Rys. 2 Tworzenie i wykonanie procedury składowanej w SQL Server 2008 Rekompilacja procedur składowanych Czasami zachodzi potrzeba ponownej kompilacji procedury składowanej. Dzieje się tak, gdy wydajność skompilowanej procedury gwałtownie spada (może tak być z wielu powodów, np. zmiany struktury indeksów lub zapisania dużej ilości rekordów), gdy istnieje potrzeba kompilacji procedury przy każdym jej wykonaniu (powody mogą być te same, co w pierwszej sytuacji) lub gdy zmianie ulega kod samej procedury (gdy użyjemy polecenia ALTER PROCEDURE). Rekompilacji, czyli ponownej kompilacji procedury, można dokonać na dwa sposoby: dodając w definicji procedury klauzulę WITH RECOMPILE. używając specjalnej systemowej procedury rekompilującej (w Microsoft SQL Server jest to procedura sp_recompile). Strona 4/21

5 Tworzenie procedur składowanych Do tworzenia procedur składowanych używamy polecenia języka SQL CREATE PROCEDURE (lub w skrócie CREATE PROC): CREATE { PROC PROCEDURE } [nazwa_schematu.]nazwa_procedury typ_danych[, n] ] [ WITH <opcje_procedury> [, n] ] [ FOR REPLICATION ] AS cialo_procedury <opcja_procedury> ::= [ ENCRYPTION ] [ RECOMPILE ] [ EXECUTE_AS_Clause ] W definicji procedury składowanej określamy: nazwę procedury nazwy typy danych kierunek działania parametrów procedury ciało procedury (kod wykonywany przez procedurę) Opcjonalnie możemy również zadeklarować, czy procedura ma być przy każdym wykonaniu rekompilowana. Poniżej podano przykład utworzenia prostej procedury składowanej nie zawierającej żadnych parametrów: CREATE PROCEDURE p_pracownicy AS SELECT imie, nazwisko FROM Osoby Wywołanie procedury składowanej Do wywołania procedury składowanej służy polecenie EXECUTE (lub w skrócie EXEC): [ { EXEC EXECUTE } ] = ] { module_name [ ;numer } [ = ] { [ OUTPUT ] [ DEFAULT ] } ] [, n] [ WITH RECOMPILE ] Przykładowo dla utworzonej wcześniej procedury składowanej p_pracownicy wywołanie będzie wyglądało w następujący sposób: EXEC p_pracownicy Parametry procedur składowanych Procedury składowane mogą przyjmować parametry wywołania. Ilość i typ danych, które należy podać przy wywołaniu procedury składowanej, określamy w trakcie tworzenia procedury (używając polecenia CREATE PROCEDURE). W zależności od tego, czy parametry będą potrzebne do Strona 5/21

6 wykonania procedury, czy też mają być one przez procedurę zwrócone, wyróżniamy dwa rodzaje parametrów: wejściowe (INPUT) oraz wyjściowe (OUTPUT). Możliwe jest też zdefiniowanie w procedurze parametru przejściowego (będącego jednocześnie wejściowym i wyjściowym), czyli parametru, którego wartość podajemy przy wywołaniu, a która może zostać zmieniona podczas działania procedury. CREATE PROCEDURE varchar(40)='smith' AS SELECT imie, nazwisko FROM Osoby WHERE nazwisko=@nazwisko Zalety i wady procedur składowanych Procedury składowane dzięki temu, że są zapisane na serwerze oraz dzięki skompilowanemu planowi wykonania przechowywanemu w buforze procedur posiadają dwie zasadnicze zalety: zwiększają wydajność bazy danych ograniczają ruch w sieci (przesyłane są tylko nazwy procedur i wartości parametrów) Ponadto procedury składowane mają kilka zalet z punktu widzenia programistów aplikacji bazodanowych: Zapewniają jedną logikę biznesową dla wszystkich aplikacji klienckich. Przesłaniają szczegóły tabel w bazie danych (przezroczystość struktury dla zwykłego użytkownika aplikacji). Umożliwiają modyfikację danych bez bezpośredniego dostępu do tabel bazy danych. Dostarczają mechanizmów bezpieczeństwa (można nadawać uprawnienia do wykonywania procedur poszczególnym użytkownikom bazy danych). Umożliwiają programowania modularne (procedura zostaje zapisana w bazie danych, skąd można ją wielokrotnie wywoływać; procedurę może pisać osoba wyspecjalizowana w bazach danych programista aplikacji jedynie ją wywoła). Zapewniają szybsze wykonanie (jeśli wymagane jest wykonanie dużej liczby zapytań, procedury składowane są szybsze, ponieważ wykonują się na serwerze, są optymalizowane i umieszczane w pamięci przy pierwszym wykonaniu). Zmniejszają ruch sieciowy (jeśli zachodzi potrzeba wykonania wielu zapytań w T-SQL na raz, można je zastąpić wywołaniem jednej procedury składowanej). Jeśli w ogóle można mówić o wadach procedur składowanych, to w zasadzie można wspomnieć o kilku aspektach: Następstwem rekompilacji czasem jest zmniejszenie wydajności procedury (czyli administrator baz danych musi wiedzieć, kiedy przeprowadzić rekompilację). W przypadku zagnieżdżania procedur składowanych należy pamiętać o tym, że zmienia się kontekst wykonania (procedura zagnieżdżana wykonuje się z uprawnieniami innej procedury). Wreszcie, aby tworzyć dobre (tzn. poprawnie działające) procedury składowane niezbędne jest poznanie zaawansowanych mechanizmów języka programowania baz danych (np. T- SQL), takich jak zmienne, funkcje i procedury systemowe czy obsługa błędów. Wyzwalacze Wyzwalacz (ang. trigger) jest specjalnym rodzajem procedury składowanej. W przeciwieństwie do zwykłej procedury składowanej wyzwalacz nie może zostać jawnie wywołany. Strona 6/21

7 Wyzwalacz jest wywoływany w reakcji na określone akcje. Akcje te to wykonanie przez użytkownika określonego polecenia SQL (INSERT, UPDATE, DELETE) na danej tabeli, dla której został określony wyzwalacz. Tworzenie wyzwalaczy Wyzwalacze tworzymy używając polecenia CREATE TRIGGER. W definicji wyzwalacza określamy: nazwę wyzwalacza dla jakiej tabeli tworzymy wyzwalacz na jakie akcje wyzwalacz będzie reagował jakiego typu wyzwalacz tworzymy ciało wyzwalacza (odpowiednik ciała procedury składowanej) czyli kod wykonywany przez wyzwalacz W SQL Server 2008 istnieją trzy rodzaje wyzwalaczy: 1. Wyzwalacze obsługujące operacje DML (ang. Data Manipulation Language), czyli INSERT, UPDATE oraz DELETE wykonywane na tabeli lub widoku. CREATE TRIGGER [nazwa_schematu.]nazwa_wyzwalacza ON { table view } [ WITH <dml_opcje_wyzwalacza> [, n] ] { FOR AFTER INSTEAD OF } [ INSERT ] [, ] [ UPDATE ] [, ] [ DELETE ] [ WITH APPEND ] [ NOT FOR REPLICATION ] AS wyrazenie_sql [ ; ] [, n] <dml_opcje_wyzwalacza> ::= [ ENCRYPTION ] [ EXECUTE AS Clause ] 2. Wyzwalacze obsługujące operacje DDL (ang. Data Definition Language), czyli CREATE, ALTER, DROP oraz pewne procedury składowane, które wykonują operacje DDL. CREATE TRIGGER nazwa_wyzwalacza ON { ALL SERVER DATABASE } [ WITH <ddl_opcje_wyzwalacza> [, n] ] { FOR AFTER } { rodzaj_zdarzenia event_group } [, n] AS wyrazenie_sql [ ; ] [, n] <ddl_opcje_wyzwalacza> ::= [ ENCRYPTION ] [ EXECUTE AS Clause ] 3. Wyzwalacze obsługujące zdarzenie logowania (LON), które jest wywoływane, kiedy ustalana jest sesja logującego się użytkownika. CREATE TRIGGER nazwa_wyzwalacza ON ALL SERVER [ WITH <opcje_wyzwalacza_logon> [, n] ] { FOR AFTER } LON AS wyrazenie_sql [ ; ] [, n] <opcje_wyzwalacza_logon> ::= [ ENCRYPTION ] [ EXECUTE AS Clause ] Strona 7/21

8 Zastosowanie wyzwalaczy Wyzwalacze znajdują wiele zastosowań w bazach danych. Przede wszystkim stosujemy wyzwalacze wszędzie tam, gdzie w inny sposób nie da się weryfikować integralności danych, a zwłaszcza ich zgodności z regułami logiki biznesowej. Na przykład chcemy, by w pewnej kolumnie tabeli wstawiane były tylko wartości unikalne, ale jednocześnie zezwalamy na wstawienie wartości NULL. Jedynym rozwiązaniem jest użycie wyzwalacza, który sprawdzi, czy wstawiana właśnie wartość już w danym polu wystąpiła, a jeżeli użytkownik wstawia wartość NULL, to wyzwalacz mu na to pozwoli (tego efektu nie można osiągnąć innymi metodami, np. używając indeksów, ustawiając właściwość unikalności kolumny lub używając kryteriów sprawdzających dane wstawiane w kolumnę). Drugie zastosowanie to wszelkiego typu automatyzacja zadań administracyjnych w bazie danych (wszelkiego rodzaju przypominacze, obsługa nietypowych działań czy chociażby wysyłanie wiadomości przez lub pager). Wreszcie z uwagi na pewne cechy wyzwalacze pozwalają na określony typ przetwarzania transakcyjnego. Przykładowe rozwiązanie Tworzenie i uruchomienie procedury składowanej W cel utworzenia nowej procedury składowanej należy z paska narzędziowego wybrać New Query i wpisać kod procedury. Przykładowo: CREATE PROCEDURE dbo.getallcustomers AS BEGIN SELECT [CustomerID], [CompanyName] FROM [Northwind].[dbo].[Customers] END Następnie należy wykonać skrypt wciskając F5 lub wybierając z paska narzędziowego Execute. Jeśli procedura składowana została utworzona poprawnie, powinieneś otrzymać komunikat Command(s) completed successfully oraz zauważyć, że została dodana nowa procedura składowana w obszarze Object Explorer, w gałęzi Databases -> Northwind -> Programmability -> StoredProcedures, co pokazano na rys. 3. Jeśli procedury nie widać w wyżej wymienionej gałęzi, należy ją odświeżyć. Jeśli procedura jest już utworzona, a mimo to zażądano kolejnego jej utworzenia, to otrzymamy następujący komunikat: There is already an object named getallcustomers in the databases. Strona 8/21

9 Rys. 3 Tworzenie nowej procedury Aby uruchomić procedurę składowaną, wystarczy użyć polecenia EXECUTE (lub krócej EXEC). Można także kliknąć prawym klawiszem myszki procedurę i wybrać Execute Stored Procedure, co wywoła okienko, w którym można przekazać do procedury jakieś parametry. Na rys. 4 widać, że rozwijane menu udostępnia także inne opcje, takie jak modyfikacja lub usunięcie. Rys. 4 Wywołanie procedury Inne metody tworzenia procedur składowanych Inną metoda tworzenia procedury składowanej jest skorzystanie z gotowego schematu procedury. W tym celu kliknij prawym przyciskiem myszy na gałęzi Stored Procedures i wybierz New StoredProcedure uzyskasz w ten sposób gotowy schemat procedury składowanej, co pokazano na rys. 5. Strona 9/21

10 Procedury składowane a polisy Rys. 5 Tworzenie nowej procedury według wzorca W SQL Server 2008 wprowadzono politykę opartą o Management Framework dla silnika SQL, dzięki której zarządzanie serwerem będzie bardziej zautomatyzowane w oparciu o pewne reguły, a nie skrypty. Zadaniem DMF (z ang. Declarative Management Framework) jest umożliwienie administratorowi zarządzania serwerami za pomocą definiowanych przez administratora reguł. W SQL Server 2008 mamy gotowe szablony reguł oparte o najlepsze praktyki zaimplementowane w narzędziu Best Practices Analyzer, używanym przez administratorów z poprzednimi wersjami systemu SQL Server. Korzystając z mechanizmu polis możemy stworzyć restrykcje dla procedur składowanych o postaci: brak możliwości definiowania przez programistę bazy danych procedur składowanych z prefiksem sp_. Restrykcję tę wprowadzimy na bazie danych Biblioteka. W ramach Object Explorer rozwijamy zakładkę Management a następnie Policy Menagement. W pierwszym kroku należy dodać warunki, jakie będą dołączone do polisy. Jako pierwszy stwórzmy warunek, który będzie pilnował, żeby nazwa procedury składowanej nie posiadała prefiksu sp_. Konfigurację tego warunku pokazano na rys. 6. Strona 10/21

11 Rys. 6 Stworzenie warunku na procedurę składowaną Następnie należy stworzyć warunek dotyczący bazy danych, na której polisa, którą za chwilę założymy, będzie działała. Zostało to zilustrowane na rys. 7. Rys. 7 Stworzenie warunku na bazę danych W kolejnym kroku należy wystawić polisę i dodać do niej wcześniej stworzone warunki. Konfiguracje wystawiania polisy pokazano na rys. 8. Strona 11/21

12 Rys. 8 Założenie polisy Kiedy mamy już wystawiona polisę i chcemy ją przetestować, powinniśmy kliknąć prawym przyciskiem myszy bazę danych Biblioteka i wybrać New Query. Następnie w edytorze możemy wpisać następujący kod, służący do utworzenia pustej procedury składowanej: CREATE PROCEDURE sp_testowa AS Zauważmy, ze wystąpił błąd. Procedura nie została utworzona, gdyż zadziałała restrykcja DMF, co pokazano na rys. 9. Rys. 9 Błąd procedury i zadziałanie polisy Strona 12/21

13 Tworzenie wyzwalacza Stwórzmy wyzwalacz, którego zadaniem będzie nie dopuścić do zalogowania wskazanego przez nas użytkownika. W tym celu na początku dodajemy użytkownika zbd_user i kojarzymy go z bazą danych AdventureWorks. Następnie tworzymy odpowiedni wyzwalacz, który nie pozwoli użytkownikowi zalogować się do Microsoft SQL Server Management Studio. W tym celu klikamy prawym przyciskiem myszy bazę AdventureWorks i z menu kontekstowego wybieramy New Query. W oknie edycji zapytania wpisujemy następujący kod: USE AdventureWorks CREATE TRIGGER trgrestrictuser ON ALL SERVER WITH EXECUTE AS 'sa' FOR LON AS BEGIN IF (ORIGINAL_LOGIN() = 'zbd_user' AND APP_NAME() = 'Microsoft SQL Server Management Studio') ROLLBACK; END Aby przetestować działanie utworzonego wyzwalacza, uruchamiamy drugą instancję SQL Server Management Studio. W oknie Connect to Server Authentication wybieramy SQL Server Authentication, w polu Login wpisujemy zbd_user, a w polu Password user. Następnie klikamy Connect. W efekcie powinien pokazać się błąd logowania jak na rys. 10. Porady praktyczne Procedury składowane Rys. 10 Bład logowania W Microsoft SQL Server przy kontroli poprawności kodu procedury w trakcie jej tworzenia serwer nie sprawdza, czy istnieją obiekty (tabele, widoki), do których procedura się odwołuje. Sprawdzenie to następuje dopiero przy wykonaniu procedury (w przypadku odwołania do nieistniejącego obiektu procedura zgłosi błąd). Rekompilacja procedury składowanej nie oznacza utworzenia procedury na nowo. Oznacza utworzenie nowego planu wykonania i zapisanie go do bufora procedury na miejsce poprzednio skompilowanego planu tej samej procedury. Systemowe procedury składowane w systemie Microsoft SQL Server 2008 są przechowywane w bazie master, zaś w ich nazwach pojawia się prefiks sp_. Zgodnie z dobra praktyka programowania baz danych, procedury składowane użytkownika w SQL Server 2008 nie powinny zaczynać się od prefiksu sp_. Prefiksem tym obarczone są systemowe procedury składowane. W sytuacji kiedy kompilator zobaczy procedurę składowaną o takiej nazwie, będzie jej szukał w procedurach systemowych jako tych, które już są skompilowane, a ich plan wykonania jest zapamiętany w buforze procedur. Dopiero kiedy jej tam nie znajdzie zacznie ją kompilować według poznanego schematu. Spowoduje to wydłużenie czasu wykonania procedury składowanej. Strona 13/21

14 Stworzenie polisy, która nie pozwoli programiście utworzyć procedury składowanej zaczynającej się od prefiksu sp_ spowoduje, że pierwsza próba stworzenia procedury o takiej nazwie pociągnie za sobą konieczność uruchomienia sprawdzenia polisy, a zatem czas wykonania polecenia nieznacznie się wydłuży. Kolejna próba stworzenia procedury niezgodnej z polisą spowoduje natychmiastowe wyświetlenie komunikatu o naruszeniu restrykcji. Z punktu widzenia bezpieczeństwa fizycznej struktury bazy danych procedury składowane stanowią dodatkowy poziom izolacji pomiędzy warstwą aplikacji dostępowej do bazy danych a warstwą fizyczna bazy danych. Poprzez zastosowanie procedur składowanych możemy uniknąć jednego z najpopularniejszych ataków na bazę danych, tzw. Wstrzykiwania kodu SQL z racji tego iż w sieci pomiędzy bazą danych a aplikacją dostępową nie jest przesyłany kod SQL tylko nazwa procedury składowanej wraz z jej parametrami. Wyzwalacze Wyzwalacze mogą być tworzone bezpośrednio w Microsoft SQL Server 2008 Database Engine za pomocą zwykłych zapytań napisanych w języku T-SQL lub poprzez specjalne metody w Microsoft.NET Framework Common Language Runtime (CLR), które po utworzeniu importowane są do instancji serwera bazodanowego. Microsoft SQL Server 2008 pozwala na tworzenie wielu wyzwalaczy dla specyficznego zdarzenia. Do tworzenia wyzwalaczy potrzebne są specjalne uprawnienia w bazie danych. Następujące instrukcje języka T-SQL nie są dozwolone w wyzwalaczach DML: ALTER DATABASE, LOAD DATABASE, RESTORE DATABASE, CREATE DATABASE, LOAD LOG, RESTORE LOG, DROP DATABASE i RECONFGURE. Dodatkowo powyższe instrukcje nie mogą być użyte wewnątrz ciała wyzwalacza DML. Uwagi dla studenta Jesteś przygotowany do realizacji laboratorium jeśli: rozumiesz, co to jest procedura składowana oraz wyzwalacz rozumiesz zasadę działania procedur składowanych i wyzwalaczy znasz składnię zaawansowanego języka Transact-SQL umiesz dodawać użytkowników do SQL Server rozumiesz różnicę pomiędzy różnymi rodzajami wyzwalaczy Pamiętaj o zapoznaniu się z uwagami i poradami zawartymi w tym module. Upewnij się, że rozumiesz omawiane w nich zagadnienia. Jeśli masz trudności ze zrozumieniem tematu zawartego w uwagach, przeczytaj ponownie informacje z tego rozdziału i zajrzyj do notatek z wykładów. Dodatkowe źródła informacji 1. Deren Bieniek, Randy Dyess, Mike Hotek, Javier Loria, Adam Machanic, Antonio Soto, Adolfo Wiernik, SQL Server 2005 Implementacja i obsługa, APN Promise, 2006 W książce obszernie przedstawiono zagadnienia związane z programowaniem baz danych. Szczegółowo omówiono zagadnienia dotyczące procedur składowanych i wyzwalaczy. Omówiono w niej implementacje procedur składowanych oraz w jaki sposób przyznawać do nich uprawnienia. Pokazano implementacje wyzwalaczy (DML i DDL). Książka szczególnie polecana ze względu na dużą zawartość ćwiczeń laboratoryjnych. 2. Kalen Delaney, Podstawy baz danych krok po kroku, APN Promise, 2006 Strona 14/21

15 Bardzo dobra książka dla osób początkujących. Pokazano w niej praktyczne zastosowanie wyzwalaczy i procedur składowanych. Książka oprócz teorii zawiera wiele przykładów. 3. Dusan Petkovic, Microsoft SQL Server 2008: A Beginner's Guide, McGraw-Hill, 2008 Pozycja napisana w sposób prosty. Wprowadza w SQL Server 2008 w sposób szybki i łatwy. Osoba początkująca w SQL Server 2008 znajdzie w niej podstawy z każdego tematu dotyczącego serwera bazodanowego. W prosty sposób dowiesz się, jak tworzyć proste procedury składowane bez parametrów i z parametrami oraz jak posługiwać się wyzwalaczami. Pozycja polecana zarówno dla osób początkujących, jak i zaawansowanych. Strona 15/21

16 Laboratorium podstawowe Problem 1 (czas realizacji 10 min) Jesteś programistą bazodanowym w firmie National Insurance. Właśnie dowiedziałeś się od swojego szefa, że firma planuje rozszerzenie na skalę uczelnianą systemu prac dyplomowych, którym zarządzała jak dotąd na Twoim wydziale. Pierwsze zadanie, jakie przed Tobą stoi to analiza już istniejących procedur składowanych. Zadanie 1. Nawiąż połączenie z SQL Server 2008 Tok postępowania Uruchom maszynę wirtualną BD2008. Jako nazwę użytkownika podaj Administrator. Jako hasło podaj P@ssw0rd. Jeśli nie masz zdefiniowanej maszyny wirtualnej w Mirosoft Virtual PC, dodaj nową maszynę używając wirtualnego dysku twardego z pliku D:\VirtualPC\Dydaktyka\BD2008.vhd. Kliknij Start. Z grupy programów Microsoft SQL Server 2008 uruchom SQL Server Management Studio. W oknie logowania kliknij Connect. 2. Uzyskaj informacje o bazie danych Z menu głównego wybierz File -> Open -> File. Odszukaj plik C:\Labs\Lab09\ProcedurySystemowe.sql i kliknij Open. Zaznacz i uruchom (F5) poniższy fragment kodu, który wywołuje procedurę systemową sp_helpdb: -- (1) Ustawiamy sie na baze danych PraceDyplomowe USE PraceDyplomowe -- (2) Wywolanie procedury systemowej sp_helpdb EXEC sp_helpdb PraceDyplomowe Procedura sp_helpdb zwraca informacje o wybranej bazie danych (rozmiar, listę plików i informacje o nich). 3. Uzyskaj informacje o obiektach bazy danych 4. Uzyskaj informacje o indeksach tabeli Zaznacz i uruchom (F5) poniższy fragment kodu, który wywołuje procedurę systemową sp_help: -- (3) Wywolanie procedury systemowej sp_help EXEC sp_help dbo.prace Procedura sp_help zwraca informacje o wybranym obiekcie bazy danych. Czy w tabeli dbo.prace jest jakakolwiek kolumna typu bit? Zaznacz kod, który wywołuje procedurę systemową sp_helpindex. -- (4) Wywolanie procedury systemowej sp_helpindex EXEC sp_helpindex dbo.prace Wciśnij F5, aby uruchomić zaznaczony fragment kodu. Procedura sp_helpindex zwraca listę i opis indeksów założonych na kolumnach w wybranej tabeli. Czy w tabeli dbo.prace jest nałożony jakiś indeks? Strona 16/21

17 Problem 2 (czas realizacji 10 min) Po dokonaniu analizy procedur już istniejących, kolejne zadanie, jakie zostało przed Tobą postawione, to zdefiniowanie procedur składowanych dla nowych użytkowników oraz modyfikacja już istniejących procedur składowanych. W pierwszej kolejności powinieneś zająć się procedurami składowanymi bez parametrów. Zadanie 1. Nawiąż połączenie z SQL Server 2008 Tok postępowania Uruchom maszynę wirtualną BD2008. Jako nazwę użytkownika podaj Administrator. Jako hasło podaj P@ssw0rd. Jeśli nie masz zdefiniowanej maszyny wirtualnej w Microsoft Virtual PC, dodaj nową maszynę używając wirtualnego dysku twardego z pliku D:\VirtualPC\Dydaktyka\BD2008.vhd. Kliknij Start. Z grupy programów Microsoft SQL Server 2008 uruchom SQL Server Management Studio. W oknie logowania kliknij Connect. 2. Utwórz procedurę składowaną Z menu głównego wybierz File -> Open -> File. Odszukaj plik C:\Labs\Lab10\Procedura_bez_parametrow.sql i kliknij Open. Zaznacz kod, który wywołuje procedurę składowaną Promotorzy: -- (1) Ustawiamy sie na baze danych PraceDyplomowe USE PraceDyplomowe -- (2) Tworzymy procedure skladowana uzytkownika CREATE PROCEDURE Promotorzy AS BEGIN SELECT [Nazwisko], [Imie] FROM Promotor END Innym sposobem stworzenia procedury składowanej jest kliknięcie prawym przyciskiem myszy gałęzi Stored Procedures i wybranie New StoredProcedure uzyskasz w ten sposób gotowy schemat procedury składowanej. Wciśnij F5, aby uruchomić zaznaczony fragment kodu. Jeśli procedura składowana została utworzona poprawnie, powinieneś otrzymać komunikat Command(s) completed successfully oraz zauważyć, że została dodana nowa procedura składowana w Object Explorer, w gałęzi Databases -> PraceDyplomowe -> Programmability -> StoredProcedures. Jeśli procedury nie widać w w/w gałęzi, odśwież ją. Jeśli procedura jest już utworzona, a mimo to zażądano kolejnego jej utworzenia, to powinieneś otrzymać komunikat There is already object name Promotorzy in the database. 3. Uruchom procedurę składowaną Zaznacz kod, który wywołuje procedurę Promotorzy: -- (3) Wywolujemy procedure skladowana Promotorzy EXEC Promotorzy Innym sposobem na wywołanie procedury składowanej jest kliknięcie Strona 17/21

18 prawym przyciskiem myszy na procedurze Promotorzy i wybranie Execute Stored Procedure, co wywoła okienko, w którym można przekazać do procedury jakieś parametry, jak na rys. 11. Rys. 11 Wywołanie procedury składowanej z parametrem Wciśnij F5, aby uruchomić zaznaczony fragment kodu. Problem 3 (czas realizacji 15 min) Kolejne zadanie, jakie powinieneś wykonać, to zdefiniowanie procedur składowanych dla nowych użytkowników oraz modyfikacja już istniejących procedur składowanych z parametrami. Zadanie 1. Nawiąż połączenie z SQL Server 2008 Tok postępowania Uruchom maszynę wirtualną BD2008. Jako nazwę użytkownika podaj Administrator. Jako hasło podaj P@ssw0rd. Jeśli nie masz zdefiniowanej maszyny wirtualnej w Microsoft Virtual PC, dodaj nową maszynę używając wirtualnego dysku twardego z pliku D:\VirtualPC\Dydaktyka\BD2008.vhd. Kliknij Start. Z grupy programów Microsoft SQL Server 2008 uruchom SQL Server Management Studio. W oknie logowania kliknij Connect. 2. Utwórz procedurę składowaną Z menu głównego wybierz File -> Open -> File. Odszukaj plik C:\Labs\Lab10\Procedura_z_parametrami.sql i kliknij Open. Zaznacz kod, który wywołuje procedurę składowaną Promotorzy: -- (1) Ustawiamy sie na baze danych PraceDyplomowe USE PraceDyplomowe -- (2) Tworzymy procedure skladowana użytkownika z parametrem CREATE PROCEDURE VARCHAR(30) AS BEGIN SELECT * FROM [PraceDyplomowe].[dbo].[Osoba] WHERE [PraceDyplomowe].[dbo].[Osoba].[nazwisko] END Wciśnij F5, aby uruchomić zaznaczony fragment kodu. 3. Uruchom procedurę składowaną Zaznacz kod, który wywołuje procedurę Promotorzy. Wciśnij F5, aby uruchomić zaznaczony fragment kodu: -- (3) Wywolujemy procedure skladowana z parametrem EXEC Strona 18/21

19 Problem 4 (czas realizacji 10 min) Po zdefiniowaniu procedur składowanych wynikających ze zmian, jakie zachodzą w firmie, w której pracujesz, kolejnym etapem jest stworzenie odpowiedniej liczby wyzwalaczy. Jeden z wyzwalaczy powinien obsługiwać następujący warunek: każdy opiekun może mieć maksymalnie 10 dyplomantów. Zadanie 1. Nawiąż połączenie z SQL Server Utwórz wyzwalacz Tok postępowania Uruchom maszynę wirtualną BD2008. Jako nazwę użytkownika podaj Administrator. Jako hasło podaj P@ssw0rd. Jeśli nie masz zdefiniowanej maszyny wirtualnej w Microsoft Virtual PC, dodaj nową maszynę używając wirtualnego dysku twardego z pliku D:\VirtualPC\Dydaktyka\BD2008.vhd. Kliknij Start. Z grupy programów Microsoft SQL Server 2008 uruchom SQL Server Management Studio. W oknie logowania kliknij Connect. Z menu głównego wybierz File -> Open -> File. Odszukaj plik C:\Labs\Lab10\Wyzwalacz_1.sql i kliknij Open. Zaznacz i uruchom (F5) poniższy fragment kodu: -- (1) Ustawiamy się na baze danych PraceDyplomowe USE PraceDyplomowe -- (2) przygotujmy tabele do testowania wyzwalaczy SELECT ID_Osoby, Nazwisko, Imie, Nr_Indeksu, ID_Stopnian INTO Osoba_kopi FROM Osoba Zaznacz i uruchom (F5) fragment kodu oznaczonego w komentarzu (3). Wynik pokazano na rys. 12: -- (3) zobaczmy, co znajduje sie w tabeli SELECT * FROM Osoba_kopi Rys. 12 Sprawdzenie zawartości tabeli W obrębie okna Object Explorer wybierz Osoba -> Triggers. Strona 19/21

20 Wciśnij prawy przycisk myszy i wybierz New Trigger. Zaznacz i uruchom (F5) poniższy fragment kodu: -- (4) Tworzymy nowy wyzwalacz CREATE TRIGGER Ocenay ON Osoba AFTER INSERT, UPDATE AS as varchar(30) = SYSTEM_USER PRINT 'Uzytkownik + ' zmienil zawartosc tabeli Osoba!!!' W celu zobaczenia działania wyzwalacza wywołaj następujące zapytanie: -- (5) Sprawdzamy dzialanie wyzwalacza UPDATE Osoba SET [Nazwisko] = 'Nowak' WHERE ID_Osoby=1 Jeśli wyzwalacz zadziałał poprawnie, w oknie Messages powinien pojawić się komunikat o treści przedstawionej na rys. 13. Rys. 13 Sprawdzanie efektu działania wyzwalacza Strona 20/21

21 Laboratorium rozszerzone Jesteś administratorem w firmie National Insurance. Właśnie dowiedziałeś się od swojego szefa, że firma zarządzająca bazą AdventureWorks planuje rozszerzenie i modernizacje systemu. W związku z modernizacją systemu bazodanowego oraz w celu spełnienia standardów bezpieczeństwa, dostęp do obiektów bazy danych powinien odbywać się poprzez procedury składowane. W wyniku tego część procedur składowanych powinna zostać zmodyfikowana i przekompilowana, część powinna zostać napisana od początku, a część powinna zostać usunięta. Kolejnym pojawiającym się problemem jest kwestia spójności zmodyfikowanej bazy danych. W tym celu powinny zostać zmodyfikowane, utworzone lub usunięte wyzwalacze służące do zaimplementowania pewnych warunków. Zadanie, jakie przed Tobą stoi, to: 1. Podjęcie decyzji, jakie nowe procedury składowane i wyzwalacze powinny zostać utworzone w celu poprawienia bezpieczeństwa bazy danych. 2. Podjęcie decyzji, które procedury składowane w bazie danych pozostaną bez zmian, a które zostaną zmodyfikowane lub usunięte. 3. Podjęcie decyzji, które wyzwalacze w bazie danych pozostaną bez zmian, a które zostaną zmodyfikowane lub usunięte. Strona 21/21

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie

Bardziej szczegółowo

ITA-101 Bazy Danych. Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Moduł 5. Wersja 1.0

ITA-101 Bazy Danych. Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Moduł 5. Wersja 1.0 Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Moduł 5 Wersja 1.0 Spis treści Język SQL DCL, DDL Język SQL DCL, DDL... 1 Informacje o module... 2 Przygotowanie teoretyczne... 3 Przykładowy

Bardziej szczegółowo

DECLARE VARIABLE zmienna1 typ danych; BEGIN

DECLARE VARIABLE zmienna1 typ danych; BEGIN Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej   Wydział Mechaniczny Technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Laboratorium 1 Wprowadzenie, podstawowe informacje o obsłudze

Bardziej szczegółowo

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15 T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

Bardziej szczegółowo

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Wrocław 2006 INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl INTERNETOWE BAZY DANYCH PLAN NA DZIŚ zajęcia 1: 2. Procedury składowane

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

Cele. Definiowanie wyzwalaczy

Cele. Definiowanie wyzwalaczy WYZWALACZE Definiowanie wyzwalaczy Cele Wyjaśnić cel istnienia wyzwalaczy Przedyskutować zalety wyzwalaczy Wymienić i opisać cztery typy wyzwalaczy wspieranych przez Adaptive Server Anywhere Opisać dwa

Bardziej szczegółowo

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

Bardziej szczegółowo

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych Paweł Paduch paduch@tu.kielce.pl 06-04-2013 Rozdział 1 Wstęp Na dzisiejszych zajęciach zajmiemy się projektem bazy danych.

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wyzwalacze Wprowadzenie Tworzenie wyzwalacza Wyzwalacze typu,,po'' Wyzwalacze typu,,zamiast''

Bardziej szczegółowo

E.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze

E.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie

Bardziej szczegółowo

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL Problemy techniczne SQL Server Zarządzanie bazami danych na serwerze SQL Do zarządzania bazami danych na serwerze SQL służy narzędzie Microsoft SQL Server Management Studio. W poradzie tej pokażemy, jak:

Bardziej szczegółowo

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;

Przykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok; Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie

Bardziej szczegółowo

CREATE USER

CREATE USER Temat: Administrowanie użytkownikami bazy danych. Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość

Bardziej szczegółowo

Składowane procedury i funkcje

Składowane procedury i funkcje Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową bazy danych za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum,

Bardziej szczegółowo

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1 Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Bazy danych ITA-101 Wersja 1 Warszawa, wrzesień 2009 Wprowadzenie Informacje o kursie Opis kursu We współczesnej informatyce coraz większą

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 2015-12-03 Bazy danych-1 W5 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum, MOL Optivum,

Bardziej szczegółowo

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory Informator Techniczny nr 115 24-09-2009 INFORMATOR TECHNICZNY WONDERWARE Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory Pakiet ActiveFactory zawiera zestaw programów umoŝliwiających

Bardziej szczegółowo

SQL Server Configuration Manager centrum dowodzenia

SQL Server Configuration Manager centrum dowodzenia Instrukcja do przedmiotu Bazy danych laboratorium (zajęcia 1) 1 Celem pierwszych zajęć laboratoryjnych jest poznanie podstaw obsługi MS SQL Server 2005 za pomocą programu SQL Server Management Studio,

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 1 Przegląd zawartości SQL Servera Podstawowe usługi SQL Servera Programy narzędziowe Bazy danych

Bardziej szczegółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL 1 Podstawy relacyjnego modelu danych. 3h UWAGA: Temat zajęć jest typowo teoretyczny i stanowi wprowadzenie do zagadnień

Bardziej szczegółowo

PHP: bazy danych, SQL, AJAX i JSON

PHP: bazy danych, SQL, AJAX i JSON 1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji

Bardziej szczegółowo

BAZY DANYCH Cz III. Transakcje, Triggery

BAZY DANYCH Cz III. Transakcje, Triggery BAZY DANYCH Cz III Transakcje, Triggery Transakcje Definicja: Zbiór operacji (modyfikacja danych, usuwanie, wstawianie, tworzenie obiektów bazodanowych), które albo wszystkie kończone są sukcesem, albo

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL Problemy techniczne SQL Server Zarządzanie bazami danych na serwerze SQL Do zarządzania bazami danych na serwerze SQL służy narzędzie Microsoft SQL Server Management Studio. W poradzie tej pokażemy, jak:

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 4 Wsady Procedury składowane Procedury składowane tymczasowe, startowe Zmienne tabelowe Funkcje

Bardziej szczegółowo

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x Wdrożenie modułu płatności eservice dla systemu oscommerce 2.3.x - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012:

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012: Systemy baz danych 16.04.2013 1. Plan: 10. Implementacja Bazy Danych - diagram fizyczny 11. Implementacja Bazy Danych - implementacja 2. Zadania: 1. Przygotować model fizyczny dla wybranego projektu bazy

Bardziej szczegółowo

Wyzwalacze. Bazy danych 201

Wyzwalacze. Bazy danych 201 Wyzwalacze Bazy danych 201 202 Bazy danych Przegląd zagadnień Czym sa wyzwalacze i kiedy je stosujemy Rodzaje wyzwalaczy Podsumowanie Laboratorium Wyzwalacz (ang. trigger) jest specjalnym rodzajem procedury

Bardziej szczegółowo

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

PRZESTRZENNE BAZY DANYCH WYKŁAD 2 PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie

Bardziej szczegółowo

Ćwiczenia 2 IBM DB2 Data Studio

Ćwiczenia 2 IBM DB2 Data Studio Ćwiczenia 2 IBM DB2 Data Studio Temat: Aplikacje w Data Studio 1. Projekty Tworzenie procedur, UDF, trygerów zaczynamy od utworzenia projektu File -> New -> Project wybieramy Data Development Project.

Bardziej szczegółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

Projektowanie systemów baz danych

Projektowanie systemów baz danych Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do

Bardziej szczegółowo

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum. Płace Optivum Jak przenieść dane programu Płace Optivum na nowy komputer? Aby kontynuować pracę z programem Płace Optivum na nowym komputerze, należy na starym komputerze wykonać kopię zapasową bazy danych

Bardziej szczegółowo

Projektowanie baz danych za pomocą narzędzi CASE

Projektowanie baz danych za pomocą narzędzi CASE Projektowanie baz danych za pomocą narzędzi CASE Metody tworzenia systemów informatycznych w tym, także rozbudowanych baz danych są komputerowo wspomagane przez narzędzia CASE (ang. Computer Aided Software

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1 Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane

Bardziej szczegółowo

Programowanie zaawansowane w T-SQL

Programowanie zaawansowane w T-SQL ITA-101 Bazy Danych Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Moduł 8 Wersja 1.0 Spis treści Programowanie zaawansowane w T-SQL... 1 Informacje o module... 2 Przygotowanie teoretyczne...

Bardziej szczegółowo

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c

Rok szkolny 2015/16 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. ADMINISTROWANIE BAZAMI DANYCH kl. 4c Wymagania edukacyjne w technikum ADMINISTROWANIE BAZAMI DANYCH kl. 4c Lp. 1 2 4 5 Temat Zasady dotyczące zarządzania projektem podczas prac związanych z tworzeniem bazy oraz cykl życiowy bazy Modele tworzenia

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4 Wdrożenie modułu płatności eservice dla systemu Gekosale 1.4 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do integracji...

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: Wprowadzenie do SQL Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D1/04_01/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 (D1) Tworzenie kopii zapasowej ustawień systemowych serwera - Zadania do wykonania

Bardziej szczegółowo

Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2. Instrukcja tworzenia bazy danych dla programu AUTOSAT 3. wersja 0.0.

Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2. Instrukcja tworzenia bazy danych dla programu AUTOSAT 3. wersja 0.0. Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2 Instrukcja tworzenia bazy danych dla programu AUTOSAT 3 wersja 0.0.4 2z12 1. Wymagania systemowe. Przed rozpoczęciem instalacji

Bardziej szczegółowo

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory Poniższa instrukcja opisuje sposób zdalnej instalacji oprogramowania Webroot SecureAnywhere w środowiskach wykorzystujących usługę Active

Bardziej szczegółowo

Uruchamianie bazy PostgreSQL

Uruchamianie bazy PostgreSQL Uruchamianie bazy PostgreSQL PostgreSQL i PostGIS Ten przewodnik może zostać pobrany jako PostgreSQL_pl.odt lub PostgreSQL_pl.pdf Przejrzano 10.09.2016 W tym rozdziale zobaczymy, jak uruchomić PostgreSQL

Bardziej szczegółowo

Pakiety podprogramów Dynamiczny SQL

Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)

Bardziej szczegółowo

Zastępstwa Optivum. Jak przenieść dane na nowy komputer?

Zastępstwa Optivum. Jak przenieść dane na nowy komputer? Zastępstwa Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Zastępstwa Optivum na innym komputerze, należy na starym komputerze wykonać kopię zapasową bazy danych programu

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Optymalizacja zapytań Pobieranie planu wykonania Indeksy i wydajność - 1 - Zadania optymalizatora

Bardziej szczegółowo

Jak przenieść bazę danych na zdalny serwer?

Jak przenieść bazę danych na zdalny serwer? Jak przenieść bazę danych na zdalny serwer? Uwaga: przed przystąpieniem do dalszych czynności pobierz i zainstaluj najnowszą wersję aplikacji, a następnie wykonaj kopię zapasową bazy danych. W tym celu

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

Microsoft SQL Server Podstawy T-SQL Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania

Bardziej szczegółowo

Wprowadzenie do programowania

Wprowadzenie do programowania do programowania ITA-104 Wersja 1 Warszawa, Wrzesień 2009 ITA-104 do programowania Informacje o kursie Zakres tematyczny kursu Opis kursu Kurs przeznaczony jest do prowadzenia przedmiotu do programowania

Bardziej szczegółowo

Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń. Cel: polecenia T-SQL Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS Authentication: SQL Server Authentication Username: student01,, student21 Password: student01,., student21

Bardziej szczegółowo

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja Jesień 2007) Instrukcja numer D1/05_03/Z Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 1 Ręczne zakładanie kont użytkowników (D1) Jak ręcznie założyć konto w systemie

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9

Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9 Wdrożenie modułu płatności eservice dla systemu Magento 1.4 1.9 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do

Bardziej szczegółowo

Systemowe aspekty baz

Systemowe aspekty baz Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5

Wdrożenie modułu płatności eservice. dla systemu Zen Cart 1.3.9 1.5 Wdrożenie modułu płatności eservice dla systemu Zen Cart 1.3.9 1.5 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie

Bardziej szczegółowo

Leszek Stasiak Zastosowanie technologii LINQ w

Leszek Stasiak Zastosowanie technologii LINQ w Leszek Stasiak Zastosowanie technologii LINQ w C# 1. Wstęp - połączenie Do naszych zadań będziemy używać Microsoft Visual Studio 2010. Stwórzmy nowy projekt Windows Form Application. Mając do dyspozycji

Bardziej szczegółowo

Użytkownicy, uprawnienia, role w SQL Server (W oparciu o SQL Server 2008R2 Books Online)

Użytkownicy, uprawnienia, role w SQL Server (W oparciu o SQL Server 2008R2 Books Online) Użytkownicy, uprawnienia, role w SQL Server (W oparciu o SQL Server 2008R2 Books Online) Tożsamość i kontrola dostępu Principals (byty żądające zasobów np. użytkownicy baz danych, konta logowania) Securables

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień:

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień: Zasady grupy (GPO) Windows Server 2008 R2 Zasady grupy to potężne narzędzie udostępnione administratorom systemów Windows w celu łatwiejszego zarządzania ustawieniami stacji roboczych. Wyobraźmy sobie

Bardziej szczegółowo

BACKUP BAZ DANYCH FIREBIRD

BACKUP BAZ DANYCH FIREBIRD BACKUP BAZ DANYCH FIREBIRD SPIS TREŚCI Informacje ogólne... 2 Tworzenie projektu... 2 Krok 1: Informacje podstawowe... 2 Krok 2: Dane... 3 Backup bazy umieszczonej na serwerze... 3 Bezpośredni backup pliku

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

BACKUP BAZ DANYCH MS SQL

BACKUP BAZ DANYCH MS SQL BACKUP BAZ DANYCH MS SQL SPIS TREŚCI Informacje ogólne... 2 Tworzenie projektu... 2 Krok 1: Informacje Podstawowe... 2 Krok 2: Dane... 3 Krok 3: Planowanie... 4 Krok 4: Zaawansowane... 5 Przywracanie baz

Bardziej szczegółowo

Kostki OLAP i język MDX

Kostki OLAP i język MDX Kostki OLAP i język MDX 24 kwietnia 2015 r. Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne rodzaje zadań,

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

Wyzwalacze. Anna Fiedorowicz Bazy danych 2

Wyzwalacze. Anna Fiedorowicz Bazy danych 2 Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych

Bardziej szczegółowo

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Microsoft.NET: LINQ to SQL, ASP.NET AJAX Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub

Bardziej szczegółowo

MS Windows Vista. Spis treści. Autor: Jacek Parzonka, InsERT

MS Windows Vista. Spis treści. Autor: Jacek Parzonka, InsERT MS Windows Vista Autor: Jacek Parzonka, InsERT Spis treści SPIS TREŚCI... 1 WSTĘP... 2 PROBLEMY... 2 UŻYWANIE AUTENTYKACJI WINDOWS DLA MS SQL SERVERA 2005 EXPRESS... 2 Run as administrator... 3 Modyfikacja

Bardziej szczegółowo

STWORZENIE BIBLIOTEKI SŁUŻĄCEJ DO WCZYTYWANIA

STWORZENIE BIBLIOTEKI SŁUŻĄCEJ DO WCZYTYWANIA LABORATORIUM SYSTEMÓW MOBILNYCH STWORZENIE BIBLIOTEKI SŁUŻĄCEJ DO WCZYTYWANIA DANYCH Z PLIKÓW MIF, SHP I ICH KONWERSJI DO POSTACI RELACYJNEJ I. Temat ćwiczenia Stworzenie biblioteki słuŝącej do wczytywania

Bardziej szczegółowo

Prawa dostępu do serwera. Nadawanie i odbieranie uprawnień DCL. Użytkownicy a role

Prawa dostępu do serwera. Nadawanie i odbieranie uprawnień DCL. Użytkownicy a role Prawa dostępu do serwera. Nadawanie i odbieranie uprawnień DCL. Użytkownicy a role Na SQL Server możemy wyróżnić trzy rodzaje ról: Serwerowe Bazodanowe Zdefiniowane przez użytkownika Role pozwalają grupować

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

ITA-101 Bazy Danych. Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Moduł 6. Wersja 1.0. Język SQL DML

ITA-101 Bazy Danych. Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Moduł 6. Wersja 1.0. Język SQL DML ITA-101 Bazy Danych Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski Moduł 6 Wersja 1.0 Spis treści Język SQL DML Język SQL DML... 1 Informacje o module... 2 Przygotowanie teoretyczne... 3

Bardziej szczegółowo

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi 1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) Tworząc tabelę nie możemy określić, do którego pliku trafi, lecz możemy określić do której grupy plików trafi Zawsze istnieje grupa zawierająca

Bardziej szczegółowo

Tworzenie zapytań do Microsoft SQL Server

Tworzenie zapytań do Microsoft SQL Server MS 20461 Tworzenie zapytań do Microsoft SQL Server Czas trwania: 5 dni (40 h) Poziom trudności: Średnio Zaawansowany Autoryzacja: Microsoft Opis: Szkolenie administratorów baz danych oraz programistów

Bardziej szczegółowo

Wstęp. Opis ten dotyczy wydziałów orzeczniczych.

Wstęp. Opis ten dotyczy wydziałów orzeczniczych. Wstęp. Opis ten dotyczy wydziałów orzeczniczych. W związku z przekształceniem 79 Sądów w Wydziały Zamiejscowe i związane z tym liczne zapytania odnośnie strony technicznej i sposobu przygotowania baz danych

Bardziej szczegółowo

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści Ramowy plan kursu Lp. Moduły Wyk. Lab. Przekazywane treści 1 3 4 Technologia MS SQL Server 2008 R2. Podstawy relacyjnego modelu i projektowanie baz. Zaawansowane elementy języka SQL. Programowanie w języku

Bardziej szczegółowo

SQL 4 Structured Query Lenguage

SQL 4 Structured Query Lenguage Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...

Bardziej szczegółowo

dziennik Instrukcja obsługi

dziennik Instrukcja obsługi Ham Radio Deluxe dziennik Instrukcja obsługi Wg. Simon Brown, HB9DRV Tłumaczenie SP4JEU grudzień 22, 2008 Zawartość 3 Wprowadzenie 5 Po co... 5 Główne cechy... 5 baza danych 7 ODBC... 7 Który produkt

Bardziej szczegółowo

Instrukcja instalacji Control Expert 3.0

Instrukcja instalacji Control Expert 3.0 Instrukcja instalacji Control Expert 3.0 Program Control Expert 3.0 jest to program służący do zarządzania urządzeniami kontroli dostępu. Dedykowany jest dla kontrolerów GRx02 i GRx06 oraz rozwiązaniom

Bardziej szczegółowo

Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.

Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. Temat: Wyzwalacze (triggery). Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę a następnie trigger

Bardziej szczegółowo

Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy];

Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy]; Widoki/Perspektywy Podstawy Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy]; Usuwanie widoku DROP VIEW [nazwa_widoku]; Przykład 1 Przykład najprostszego

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.

Bardziej szczegółowo