Praktyczny kurs SQL. Wydanie II
|
|
- Wacław Kaźmierczak
- 10 lat temu
- Przeglądów:
Transkrypt
1
2 Idź do Spis treści Przykładowy rozdział Skorowidz Katalog książek Katalog online Zamów drukowany katalog Twój koszyk Dodaj do koszyka Cennik i informacje Zamów informacje o nowościach Zamów cennik Czytelnia Fragmenty książek online Kontakt Helion SA ul. Kościuszki 1c Gliwice tel helion@helion.pl Helion Praktyczny kurs SQL. Wydanie II Autor: Danuta Mendrala, Marcin Szeliga ISBN: Format: , stron: 304 Poznaj modele baz danych i standardy języka SQL Naucz się korzystać z instrukcji pobierania i modyfikacji danych Dowiedz się, jak tworzyć i zmieniać strukturę bazy oraz zarządzać jej użytkownikami Opanuj język SQL w praktyce! Bazy danych są dosłownie wszędzie. Trudno sobie dziś bez nich wyobrazić funkcjonowanie nowoczesnej biblioteki, choćby najmniejszego sklepu internetowego, biura rachunkowego czy nawet niewielkiego serwisu WWW. Użytkownicy korzystający z baz danych często nie mają nawet pojęcia, w jaki sposób odbywa się dostęp do informacji i jaki mechanizm jest za to odpowiedzialny. Na ignorancję tę nie mogą sobie jednak pozwolić osoby odpowiedzialne za tworzenie, zarządzanie i konserwowanie baz danych. Powinny one znać przynajmniej jeden z popularnych serwerów bazodanowych i sprawnie posługiwać się językiem SQL stanowiącym standardowe narzędzie komunikacji z relacyjnymi bazami. Jeśli pragniesz dołączyć do ekskluzywnego grona administratorów baz danych lub chcesz zostać programistą aplikacji bazodanowych, lecz przeszkadza Ci brak znajomości SQL-a, sięgnij po książkę Praktyczny kurs SQL. Wydanie II. W prosty i przystępny sposób prezentuje ona podstawowe pojęcia i zasady rządzące relacyjnym modelem baz danych, a także najważniejsze cechy i konstrukcje języka SQL oraz metody ich wykorzystywania. Lektura książki umożliwi Ci poznanie instrukcji odpowiedzialnych za odczytywanie danych z bazy i ich zapisywanie oraz modyfikację, jak również tworzenie baz i zmianę ich struktury. Poznasz też sposoby tworzenia ról i kont użytkowników oraz zarządzania ich uprawnieniami. Twoją wiedzę ugruntują praktyczne zadania kończące każdy rozdział, a zamieszczone na końcu książki rozwiązania pomogą skorygować ewentualne błędy. Teoretyczne podstawy funkcjonowania baz danych Historia języka SQL i obowiązujące standardy zapytań Odczytywanie, przeszukiwanie, łączenie i grupowanie danych Korzystanie z podzapytań Zapisywanie, modyfikacja i usuwanie danych Transakcje i równoległy dostęp do danych Tworzenie baz danych i modyfikacja ich struktury Korzystanie z widoków i indeksów Zarządzanie użytkownikami, rolami i prawami dostępu do baz danych Dowiedz się, jak tworzyć relacyjną bazę danych i zarządzać nią za pomocą języka SQL
3 Spis tre ci Wst p... 9 Cz I Troch teorii, czyli modele i standardy Rozdzia 1. Relacyjny model baz danych Tabele jako zbiory danych Kolumny maj niepowtarzalne nazwy i zawieraj okre lone typy danych Wiersze powinny by unikalne Kolejno kolumn jest bez znaczenia Kolejno wierszy jest bez znaczenia Bazy danych Trzy modele baz danych: relacyjny, obiektowy i jednorodny Model jednorodny Model relacyjny Model obiektowy Za o enia relacyjnego modelu baz danych Postulaty Codda dotycz ce struktury danych Postulaty Codda dotycz ce przetwarzania danych Postulaty Codda dotycz ce integralno ci danych Normalizacja Podsumowanie Zadania Rozdzia 2. Standardy j zyka SQL Strukturalny j zyk zapyta Przetwarzanie zbiorów a przetwarzanie pojedynczych danych J zyk deklaratywny a j zyk proceduralny J zyk interpretowany a j zyk kompilowany Sk adnia j zyka SQL Dialekty j zyka SQL Standardy ANSI Historia SQL Podsumowanie Zadania... 44
4 4 Praktyczny kurs SQL Cz II Pobieranie danych, czyli instrukcja SELECT Rozdzia 3. Odczytywanie danych z wybranej tabeli Klauzula FROM W pe ni kwalifikowane nazwy obiektów Wybieranie kolumn Eliminowanie duplikatów Wyra enia Operatory arytmetyczne czenie danych tekstowych Funkcje systemowe Formatowanie wyników Aliasy Sta e (litera y) Sortowanie wyników Sortowanie danych tekstowych Podsumowanie Zadania Rozdzia 4. Wybieranie wierszy Logika trójwarto ciowa Warto NULL Operatory logiczne Klauzula WHERE Standardowe operatory porównania Operatory SQL Z o one warunki logiczne Klauzula TOP Stronicowanie wierszy Wydajne wyszukiwanie danych W jaki sposób serwery bazodanowe odczytuj dane? W jakiej kolejno ci serwery bazodanowe wykonuj poszczególne klauzule zapyta? Argumenty SARG Podsumowanie Zadania Rozdzia 5. czenie tabel i wyników zapyta Z czenia naturalne i nienaturalne Klucze obce Aliasy Z czenia równo ciowe i nierówno ciowe Z czenia zewn trzne Z czenie lewostronne Z czenie prawostronne Z czenie obustronne Z czenie krzy owe (iloczyn kartezja ski) Z czenia wielokrotne Okre lanie kolejno ci z cze Z czenie tabeli z ni sam Eliminacja duplikatów Klucze obce w obr bie jednej tabeli
5 Spis tre ci 5 czenie wyników zapyta Suma Cz wspólna Ró nica czenie wierszy i wyników funkcji tabelarycznych Operator APPLY Podsumowanie Zadania Rozdzia 6. Grupowanie wierszy Funkcje grupuj ce Funkcja COUNT() Funkcje SUM() i AVG() Funkcje MIN() i MAX() Inne funkcje grupuj ce Wyra enia Klauzula GROUP BY Kolejno wykonywania klauzuli GROUP BY Operatory CUBE i ROLLUP Operator GROUPING SETS Wydajne grupowanie danych Niestandardowa klauzula OVER Partycje Funkcje rankingu Niestandardowe operatory PIVOT i UNPIVOT PIVOT UNPIVOT Klauzula HAVING Podsumowanie Zadania Zadanie dodatkowe, do wykonania w bazie AdventureWorks Rozdzia 7. Podzapytania Czym s podzapytania? Podzapytania jako zmienne Podzapytania niepowi zane Podzapytania powi zane Podzapytania jako ród a danych Tabele pochodne CTE Wyznaczanie trendów Operatory Operator EXISTS Operator ANY lub SOME Operator ALL Podsumowanie Zadania Zadanie dodatkowe, do wykonania w bazie AdventureWorks
6 6 Praktyczny kurs SQL Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE oraz MERGE Rozdzia 8. Modyfikowanie danych Wstawianie danych Klucze podstawowe Warto ci domy lne Warto NULL Konstruktor wierszy Wstawianie wyników zapyta Usuwanie danych Instrukcja DELETE Instrukcja TRUNCATE TABLE Aktualizowanie danych Jednoczesne aktualizowanie wielu kolumn Wyra enia Aktualizowanie danych wybranych na podstawie danych z innych tabel Aktualizowanie danych za pomoc wyra e odwo uj cych si do innych tabel Instrukcja MERGE Podsumowanie Zadania Zadanie dodatkowe, do wykonania w bazie AdventureWorks Rozdzia 9. Transakcje i wspó bie no W a ciwo ci transakcji Transakcyjne przetwarzanie danych Tryb jawnego zatwierdzania transakcji Rozpoczynanie transakcji Wycofywanie transakcji Zatwierdzanie transakcji Zagnie d anie transakcji Punkty przywracania Wspó bie no Blokady Zakleszczenia Poziomy izolowania transakcji Model optymistyczny Model pesymistyczny Podsumowanie Zadania Cz IV Tworzenie baz danych, czyli instrukcje CREATE, ALTER i DROP Rozdzia 10. Bazy danych i tabele Tworzenie i usuwanie baz danych Tworzenie i usuwanie tabel Schematy Zmiana struktury tabeli Ograniczenia NOT NULL Klucz podstawowy Niepowtarzalno
7 Spis tre ci 7 Warto domy lna Warunek logiczny Klucz obcy Ograniczenia a wydajno instrukcji modyfikuj cych i odczytuj cych dane Podsumowanie Zadania Rozdzia 11. Widoki i indeksy Widoki Tworzenie i usuwanie widoków Modyfikowanie widoków Korzystanie z widoków Zalety widoków Indeksy Tworzenie, modyfikowanie i usuwanie indeksów Porz dkowanie indeksów Podsumowanie Zadania Cz V Uprawnienia u ytkowników, czyli instrukcje GRANT i REVOKE Rozdzia 12. Nadawanie i odbieranie uprawnie Konta u ytkowników Zak adanie i usuwanie kont u ytkowników Role Tworzenie i usuwanie ról Przypisywanie ról do u ytkowników Specjalna rola Public Uprawnienia Nadawanie i odbieranie uprawnie Dziedziczenie uprawnie Przekazywanie uprawnie Zasada minimalnych uprawnie Podsumowanie Zadania Zadanie dodatkowe, do wykonania w bazie AdventureWorks Dodatek A Rozwi zania zada Zadania z rozdzia u Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadanie
8 8 Praktyczny kurs SQL Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Zadania z rozdzia u Zadanie Zadanie Zadanie Skorowidz
9 Rozdzia 9. Transakcje i wspó bie no Czym s transakcje? Co oznacza skrót ACID? Jakie s zalety transakcyjnego przetwarzania danych? Na czym polega ró nica pomi dzy transakcjami zagnie d onymi a zagnie d aniem transakcji? Co oznacza termin wspó bie no? Po co serwery bazodanowe zak adaj blokady? Kiedy dochodzi do zakleszcze? Czy warto zmienia domy lny poziom izolowania transakcji? W jakich sytuacjach optymistyczny model wspó bie no ci jest lepszy ni pesymistyczny? W a ciwo ci transakcji Transakcje gwarantuj spójno modyfikowanych informacji. Typowym przyk adem transakcyjnego przetwarzania danych jest przeniesienie pieni dzy z jednego konta na drugie. Taka operacja przebiega w dwóch etapach: 1. Zmniejszenie o pewn sum stanu konta X. 2. Dodanie tej sumy do stanu konta Y.
10 200 Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE, MERGE Gdyby po wykonaniu pierwszej operacji wyst pi b d uniemo liwiaj cy wykonanie drugiej, z systemu znikn aby pewna suma pieni dzy. Równie nieprzyjemnym zaskoczeniem dla w a ciciela by oby sprawdzenie przez niego stanu obu jego kont ju po odj ciu danej sumy z pierwszego, ale przed jej dodaniem do drugiego konta. eby temu zapobiec, transakcje musz by : 1. Niepodzielne (ang. Atomicity). Niepodzielno oznacza, e zatwierdzane s wszystkie wchodz ce w sk ad transakcji instrukcje albo nie jest zatwierdzana adna z nich. Innymi s owy, wszystkie wchodz ce w sk ad transakcji instrukcje musz by wykonane poprawnie je eli cho jedna z nich zg osi b d, wszystkie przeprowadzone w ramach transakcji zmiany zostan wycofane. 2. Spójne (ang. Consistency). Ta cecha transakcji gwarantuje, e ich wykonanie nie doprowadzi, nawet w przypadku awarii serwera, do utraty spójno ci danych. Poniewa wszystkie zmiany danych s wykonywane w ramach transakcji, przechowywane w bazach informacje zawsze b d spójne Izolowane (ang. Isolation). Izolowanie transakcji wymaga albo zablokowania modyfikowanych w ramach jednej z nich danych, albo utworzenia ich dodatkowej wersji. W zale no ci od obowi zuj cego w ramach serwera lub sesji klienckiej poziomu izolowania transakcji, mo e doj do nast puj cych sytuacji: a) Utrata aktualizacji (ang. Lost update) ma miejsce, gdy dwa procesy modyfikuj jednocze nie te same dane. Przyk adowo jeden u ytkownik zmienia cen towaru na 100 z, a drugi na 200. W takim przypadku jedna ze zmian zostanie utracona (zast piona drug modyfikacj ). Domy lnie skonfigurowane serwery bazodanowe nie dopuszczaj do utraty aktualizacji. b) Brudne odczyty (ang. Dirty reads) do takiej sytuacji dochodzi, gdy mo liwe jest odczytanie zmian niezatwierdzonych jeszcze przez inny proces. Je eli proces odczytuj cy nie za da za o enia blokady na odczytywanych danych, uzyska do nich dost p nawet wtedy, kiedy w a nie b d modyfikowane. Gdyby proces modyfikuj cy wycofa wprowadzone zmiany, odczytane dane okaza yby si niespójne. Domy lnie skonfigurowane serwery bazodanowe nie dopuszczaj brudnych odczytów. c) Niepowtarzalne odczyty (ang. Non-repeatable reads) maj miejsce, gdy powtórzenie w ramach transakcji tego samego odczytu daje inny wynik. Ró nice w wynikach s spowodowane tym, e natychmiast po zako czeniu odczytu (a nie po zako czeniu ca ej transakcji) proces odczytuj cy zdejmuje blokady za o one na odczytywane dane. Niezablokowane dane mog by zmienione przez inny proces, a wi c ich powtórne odczytanie da inny (niespójny) wynik. Domy lnie skonfigurowane serwery bazodanowe dopuszczaj niepowtarzalne odczyty. d) Odczyty widma (ang. Phantom reads) sytuacja taka ma miejsce, je eli pomi dzy dwoma wykonanymi w ramach transakcji odczytami zmieni si liczba odczytywanych wierszy. Je li np. podczas pierwszego odczytu w tabeli 1 Przynajmniej w teorii. W praktyce bazy danych ulegaj uszkodzeniu, cho bardzo rzadko z winy serwerów bazodanowych.
11 Rozdzia 9. Transakcje i wspó bie no 201 Produkty znajdowa o si 100 produktów o cenach ni szych ni 10 z, instrukcja SELECT * FROM Produkty WHERE Cena <10 zwróci aby 100 wierszy. W trakcie trwania transakcji mo liwa jest jednak zmiana pozosta ych wierszy tabeli, w tym obni enie ceny jakiego produktu poni ej 10 z. Mo liwe jest równie wstawienie do tej tabeli nowego produktu o cenie np. 7 z. Z tego powodu drugie wykonanie tego samego zapytania zwróci oby ju 102 wiersze. Domy lnie skonfigurowane serwery bazodanowe dopuszczaj odczyty widma. 4. Trwa e (ang. Durability). Trwa o transakcji gwarantuje, e efekty zatwierdzonych transakcji b d zapisane w bazie, nawet w przypadku awarii serwera baz danych. Do przywrócenia spójno ci danych serwery bazodanowe z regu y u ywaj jakiej formy dziennika transakcyjnego. Pierwsze litery cech transakcji (A Atomicity, C Consistency, I Isolation, D Durability) tworz skrót ACID, powszechnie u ywany do opisywania regu przetwarzania danych, których musz przestrzega serwery bazodanowe, eby mog y by nazwane transakcyjnymi lub relacyjnymi. Transakcyjne przetwarzanie danych Serwery bazodanowe mog dzia a w trybie niejawnego zatwierdzania transakcji (w serwerze SQL 2011 taki tryb jest trybem domy lnym). Oznacza to, e u ytkownicy nie musz samodzielnie rozpoczyna transakcji, bo serwer robi to za nich. W trybie niejawnego zatwierdzania transakcji wykonanie ka dej instrukcji j zyka SQL sk ada si z trzech etapów: 1. Serwer bazodanowy automatycznie rozpoczyna now transakcj. 2. Wykonywana jest pojedyncza instrukcja SQL. 3. Je eli instrukcja zosta a wykonana z powodzeniem, transakcja jest zatwierdzana, w przeciwnym razie jest wycofywana. Taki sposób dzia ania oznacza, e u ytkownicy nie mog samodzielnie zatwierdza lub wycofywa automatycznie rozpocz tych transakcji. Dlatego nazywa si on trybem niejawnego zatwierdzania transakcji. Poni szy przyk ad ilustruje dzia anie trybu niejawnego zatwierdzania transakcji za pomoc funkcji zwracaj cej liczb otwartych, aktywnych w danym momencie transakcji: UPDATE dbo.produkty SET [Koszt standardowy]=3 WHERE [Kod produktu]='nwtc-82';
12 202 Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE, MERGE SELECT 0 0 Jak wida, przed rozpocz ciem i po zako czeniu wykonywania instrukcji UPDATE nie by o adnych otwartych transakcji. Tryb jawnego zatwierdzania transakcji W niektórych serwerach bazodanowych (np. w serwerze Oracle) domy lnym trybem transakcyjnego przetwarzania danych jest tryb ich jawnego zatwierdzania. W tym trybie wykonanie ka dej instrukcji j zyka SQL przebiega nast puj co: 1. Serwer bazodanowy automatycznie rozpoczyna now transakcj. 2. Wykonywana jest pojedyncza instrukcja SQL. 3. U ytkownik samodzielnie musi zatwierdzi lub wycofa otwart przez serwer transakcj. Dzia anie tego trybu mo na zasymulowa w serwerze SQL 2011, ustawiaj c opcj sesji IMPLICIT_TRANSACTIONS: SET IMPLICIT_TRANSACTIONS ON; UPDATE dbo.produkty SET [Koszt standardowy]=3 WHERE [Kod produktu]='nwtc-82'; 0 1 Tym razem przed rozpocz ciem instrukcji UPDATE równie nie by o otwartych transakcji, ale niejawnie rozpocz ta transakcja nie zosta a po jej wykonaniu automatycznie zamkni ta. Musi to zrobi sam u ytkownik albo zatwierdzaj c wprowadzone zmiany, albo je wycofuj c. Przed przej ciem do dalszych wicze zako cz transakcj i wy cz omawiany tryb: COMMIT TRAN; SET IMPLICIT_TRANSACTIONS OFF; Tryb jawnego zatwierdzania transakcji pozwala wycofywa przypadkowe lub b dne modyfikacje, ale zatwierdzanie transakcji, która nie zosta a przez nas rozpocz ta, jest ma o intuicyjne.
13 Rozdzia 9. Transakcje i wspó bie no 203 Rozpoczynanie transakcji Mechanizm transakcyjnego przetwarzania danych poka emy, jawnie rozpoczynaj c i ko cz c transakcje. Pozwoli nam to wykona w ramach poszczególnych transakcji dowoln liczb instrukcji oraz samodzielnie sterowa czasem rozpocz cia i zako czenia poszczególnych transakcji. eby rozpocz transakcj, nale y wykona instrukcj BEGIN TRAN 2 : BEGIN TRAN; 1 Je eli teraz w ramach tej samej sesji (czyli w tym samym oknie edytora SQL) zaktualizujemy ceny wybranych towarów i sprawdzimy liczb aktywnych transakcji, dowiemy si, e rozpocz ta przez nas transakcja nadal jest otwarta: UPDATE dbo.produkty SET [Cena katalogowa]=1 WHERE Kategoria='Zupy' 1 Dopóki transakcja, w ramach której przeprowadzili my dowolne zmiany, jest otwarta, mo emy je albo wycofa, albo zatwierdzi. Poniewa serwer bazodanowy nie jest w stanie przewidzie naszej decyzji, a jedn z cech transakcji jest jej odizolowanie, próba odczytania danych z tabeli dbo.produkty w ramach tej samej sesji sko czy si zupe nie inaczej ni ta sama próba wykonana przez innego u ytkownika. eby si o tym przekona : 1. W tym samym oknie kodu SQL wykonaj zapytanie: SELECT [Nazwa produktu], [Cena katalogowa], Kategoria FROM dbo.produkty WHERE Kategoria IN ('Zupy','Sosy') ORDER BY Kategoria; Northwind Traders Hot Pepper Sauce 21,05 Sosy Northwind Traders Tomato Sauce 17,00 Sosy Northwind Traders Curry Sauce 30,00 Sosy Northwind Traders Clam Chowder 1,00 Zupy Northwind Traders Vegetable Soup 1,00 Zupy Northwind Traders Chicken Soup 1,00 Zupy 2. Zosta o ono natychmiast wykonane, a cena ka dej zupy wynosi Aby wykona to samo zapytanie jako inny u ytkownik, otwórz nowe okno edytora SQL 3 i skopiuj do niego powy sz instrukcj SELECT (rysunek 9.1). 2 W niektórych serwerach bazodanowych transakcje rozpoczyna si instrukcjami BEGIN TRANSACTION lub BEGIN WORK.
14 204 Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE, MERGE Rysunek 9.1. Zapytanie wykonuje si ju prawie dwie minuty, ale wci nie zwróci o adnych danych Transakcyjne przetwarzanie danych polega na takim realizowaniu da klientów przez serwery bazodanowe, eby ka dy klient mia wra enie, i jest jedynym u ytkownikiem serwera. Wymaga to opisanego w dalszej cz ci rozdzia u blokowania obiektów, do których w danym momencie odwo uj si inni u ytkownicy serwera. Wycofywanie transakcji Wycofanie transakcji oznacza przywrócenie danych do stanu sprzed jej rozpocz cia i zdj cie wszystkich za o onych na potrzeby transakcji blokad. Je eli wrócimy do pierwszego okna edytora SQL (tego, w którym zapytanie zwróci o wyniki) i wykonamy w nim instrukcj ROLLBACK TRAN 4, a nast pnie prze czymy si do drugiego okna edytora SQL, przekonamy si, e zapytanie wreszcie zosta o wykonane i w dodatku ceny produktów z pierwszej podkategorii wcale nie wynosz 1. Spowodowane jest to wycofaniem transakcji, w ramach której ceny by y zmienione, i zdj ciem za o onych na jej potrzeby blokad: 3 Mo na to zrobi, naciskaj c kombinacj klawiszy Ctrl+N lub klikaj c przycisk New Query. 4 W niektórych serwerach bazodanowych transakcje wycofuje si instrukcjami ROLLBACK TRANSACTION lub ROLLBACK WORK.
15 Rozdzia 9. Transakcje i wspó bie no 205 SELECT [Nazwa produktu], [Cena katalogowa], Kategoria FROM dbo.produkty WHERE Kategoria IN ('Zupy','Sosy') ORDER BY Kategoria; Northwind Traders Hot Pepper Sauce 21,05 Sosy Northwind Traders Tomato Sauce 17,00 Sosy Northwind Traders Curry Sauce 30,00 Sosy Northwind Traders Clam Chowder 7,2375 Zupy Northwind Traders Vegetable Soup 1,4175 Zupy Northwind Traders Chicken Soup 1,4625 Zupy Zatwierdzanie transakcji Zatwierdzenie transakcji oznacza utrwalenie wprowadzonych w jej trakcie zmian i zdj cie wszystkich za o onych na potrzeby transakcji blokad. Wspomniany na pocz tku rozdzia u przyk ad przelania pieni dzy z jednego konta na drugie móg by by zaimplementowany w taki sposób: BEGIN TRAN; EXEC uspdodajdokonta ' ', 500; EXEC uspodejmijodkonta ' ', 500; COMMIT TRAN; ELSE ROLLBACK TRAN; Po jawnym rozpocz ciu transakcji nast puje wywo anie dwóch (nieistniej cych w przyk adowej bazie danych) procedur. Je eli adna z nich nie zg osi b du, ca a transakcja b dzie zatwierdzona (zatwierdzi transakcj mo emy, wykonuj c instrukcj COMMIT TRAN 5 ), w przeciwnym razie zostanie ona wycofana. Zagnie d anie transakcji Wi kszo serwerów bazodanowych pozwala zagnie d a transakcje, czyli wykona instrukcj BEGIN TRAN w ramach wcze niej rozpocz tej transakcji. Wynikiem takiej operacji jest zwi kszenie licznika otwartych transakcji, a nie rozpocz cie nowej (atomowej, niepodzielnej, trwa ej i spójnej) transakcji. Dzia anie mechanizmu zagnie d ania transakcji ilustruje poni szy przyk ad: wykonanie instrukcji BEGIN TRAN powoduje zwi kszenie o jeden licznika otwartych transakcji, wykonanie instrukcji COMMIT TRAN zmniejsza warto tego licznika o jeden, ale wykonanie instrukcji ROLLBACK TRAN zamyka transakcje i zeruje licznik otwartych transakcji: BEGIN TRAN; 5 W niektórych serwerach bazodanowych transakcje zatwierdza si instrukcjami COMMIT TRANSACTION lub COMMIT WORK.
16 206 Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE, MERGE BEGIN TRAN; SELECT BEGIN TRAN; SELECT COMMIT TRAN; SELECT ROLLBACK TRAN; SELECT Punkty przywracania Wi kszo serwerów bazodanowych pozwala wycofa nie tylko ca transakcj, lecz tak e jej cz. W tym celu nale y w trakcie transakcji wykona instrukcj SAVE TRAN 6, a nast pnie przywróci j do danego punktu: BEGIN TRAN; INSERT INTO dbo.dostawcy(firma) VALUES ('TEST1'); SAVE TRAN PP1; INSERT INTO dbo.dostawcy(firma) VALUES ('TEST2'); ROLLBACK TRAN PP1; 1 1 Poniewa przywrócenie stanu transakcji do okre lonego punktu nie powoduje jej zako czenia (liczba otwartych transakcji nadal wynosi 1), musimy j zatwierdzi lub wycofa : SELECT ID, Firma FROM dbo.dostawcy WHERE Firma LIKE 'TEST_'; 17 TEST1 Jako e druga instrukcja INSERT zosta a wykonana po zdefiniowaniu punktu przywracania PP1, instrukcja ROLLBACK TRAN PP1 przywróci a stan danych do momentu sprzed jej wykonania i w rezultacie tylko pierwszy wiersz zosta na trwa e wstawiony do tabeli. 6 W niektórych serwerach bazodanowych punkty przywracania tworzy si instrukcjami SAVE TRANSACTION lub SAVE WORK.
17 Rozdzia 9. Transakcje i wspó bie no 207 Wspó bie no Wspó bie no to zdolno systemu do jednoczesnego realizowania wielu operacji, z regu y uzyskiwana poprzez uruchomienie osobnych procesów (robotników) na potrzeby obs ugi poszczególnych da. Wspó bie no ma ogromny wp yw na skalowalno serwerów bazodanowych, czyli ich zdolno do coraz szybszego wykonywania transakcji dzi ki rozbudowywaniu komputerów, na przyk ad zwi kszaniu ich mocy obliczeniowej czy przepustowo ci dysków twardych. Blokady eby ka dy z kilkuset czy nawet kilku tysi cy jednoczesnych u ytkowników serwera bazodanowego móg pracowa tak, jakby by jego jedynym u ytkownikiem, konieczne jest odizolowanie od siebie poszczególnych transakcji. Umo liwiaj to automatycznie zak adane blokady. Pomijaj c analizy wewn trznych mechanizmów dzia ania ró nych serwerów bazodanowych, blokady mo na podzieli ze wzgl du na ich tryb (sposób blokowania) i zakres (typ blokowanych zasobów). Tryby blokad Tryb blokady decyduje o tym, czy mo liwe b dzie jej za o enie na zasobie wcze niej zablokowanym przez inny proces: Zakresy blokad 1. Blokady wspó dzielone S (ang. Shared) s domy lnie zak adane na odczytywanych obiektach, takich jak tabele czy wiersze. Na obiekt zablokowany w trybie S inne procesy te mog za o y blokad S, czyli odczytuj cy nie blokuj innych odczytuj cych. Blokady S domy lnie zak adane s tylko na czas wykonywania zapytania, a nie ca ej transakcji. 2. Blokady wy czne X (ang. exclusive) s zak adane na modyfikowanych obiektach. Blokady X s niekompatybilne z innymi blokadami, czyli modyfikuj cy blokuj innych u ytkowników. W przeciwie stwie do blokad wspó dzielonych blokady wy czne domy lnie s utrzymywane do zako czenia ca ej transakcji, a nie pojedynczej operacji. Blokady mog by zak adane na poziomie poszczególnych wierszy, kluczy indeksów, stron, zakresów lub ca ych tabel. Te obiekty tworz naturaln hierarchi : tabela sk ada si z wielu stron, na ka dej stronie zapisanych jest wiele wierszy itd. Z tego powodu serwery bazodanowe musz analizowa wszystkie istniej ce blokady, zanim za o now je eli cho jeden wiersz tabeli jest zablokowany w trybie X, nie mo na na ca ej tabeli za o y innej blokady.
18 208 Cz III Modyfikowanie danych, czyli instrukcje INSERT, UPDATE, DELETE, MERGE Im wi ksze obiekty s blokowane, tym mniejsza wspó bie no (bo u ytkownicy musz d u ej czeka na dost p do zablokowanych zasobów), ale równie tym mniejsza liczba blokad, którymi musi zarz dza serwer bazodanowy (zostanie za o ona jedna blokada na ca ej tabeli zamiast miliona blokad na poszczególnych wierszach). Zakleszczenia Zakleszczenie (ang. DeadLock) ma miejsce, gdy ró ne procesy blokuj si nawzajem w taki sposób, e aden z nich nie jest w stanie za o y blokad wymaganych do uko czenia ju rozpocz tych operacji. Najcz ciej wyst puj dwa typy zakleszcze : 1. Zakleszczenia cykliczne, wynikaj ce z tego, e dwa procesy w ró nych kolejno ciach próbuj uzyska dost p do tych samych zasobów. 2. Zakleszczenia konwersji blokad, zwi zane ze zmian wcze niej za o onej blokady wspó dzielonej (wiele procesów mo e jednocze nie zablokowa ten sam zasób w trybie S) na blokad wy czn (tylko jeden proces mo e za o y na tym samym obiekcie blokad X). Serwery bazodanowe automatycznie wykrywaj zakleszczenia i przerywaj dzia anie jednego procesu. Na ofiar zakleszczenia wybierany jest proces o ni szym priorytecie, a je eli oba procesy maj ten sam priorytet, ofiar zakleszczenia zostaje ten, którego wycofanie jest mniej kosztowne. Mechanizm wykrywania i usuwania zakleszcze pokazuje poni szy przyk ad: Pierwszy u ytkownik w ramach jawnie rozpocz tej transakcji modyfikuje kilka danych w tabeli dbo.dostawcy: BEGIN TRAN; UPDATE dbo.dostawcy SET Firma = UPPER(Firma) WHERE ID<5;; (4 row(s) affected) Nast pnie inny u ytkownik w ramach jawnie rozpocz tej przez siebie transakcji modyfikuje znacznie wi cej danych w tabeli Transakcje magazynowe 7 : BEGIN TRAN; UPDATE dbo.[transakcje magazynowe] SET Ilo += 1 WHERE [ID transakcji] <135; (100 row(s) affected) 7 Mo emy zasymulowa jednoczesn prac dwóch u ytkowników, otwieraj c nowe okno edytora SQL ka de z okien nawi zuje w asn sesj z baz danych.
19 Rozdzia 9. Transakcje i wspó bie no 209 W dalszej kolejno ci pierwszy u ytkownik próbuje odczyta zawarto tabeli zablokowanej ju przez drug sesj (okno wyników mo e pokaza kilka wierszy, ale i tak u ytkownik b dzie musia czeka na mo liwo zablokowania w trybie S pozosta ych wierszy tabeli Transakcje magazynowe): SELECT * FROM dbo.[transakcje magazynowe]; W tym momencie nie wyst pi o jeszcze zakleszczenie wystarczy oby, eby drugi u ytkownik zako czy swoj transakcj. Ale je eli w ramach drugiej sesji u ytkownik spróbuje odczyta zawarto tabeli zmodyfikowanej przez pierwszego u ytkownika, oba procesy si zakleszcz : SELECT ID, Firma, [Tytu zawodowy] FROM dbo.dostawcy; 1 Dostawca A Kierownik ds. sprzeda y 2 Dostawca B Kierownik ds. sprzeda y 3 Dostawca C Przedstawiciel handlowy 4 Dostawca D Kierownik ds. marketingu 5 Dostawca E Kierownik ds. sprzeda y Po chwili drugie zapytanie zosta o jednak wykonane, co wi cej nazwy firm nie zosta y przekonwertowane na wielkie litery. eby przekona si, dlaczego tak si sta o, wystarczy prze czy si do okienka pierwszej sesji. Znajdziemy w nim poni szy komunikat b du: Transaction (Process ID 52) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction. Je eli sprawdzimy liczb otwartych w ramach pierwszej sesji transakcji, oka e si, e jawnie rozpocz ta przez pierwszego u ytkownika transakcja zosta a zgodnie z komunikatem b du wycofana: 0 Poniewa wycofanie transakcji wi e si ze zdj ciem za o onych na jej potrzeby blokad, druga sesja mog a z powodzeniem zako czy operacje i odczyta tabel dbo.dostawcy. Liczba transakcji otwartych w ramach drugiej sesji nadal wynosi 1 eby zako czy wiczenie i wycofa zmiany, nale y wykona w tym oknie edytora SQL instrukcj ROLLBACK TRAN. Poziomy izolowania transakcji Mo emy wp ywa na sposób zak adania blokad przez serwery bazodanowe, zmieniaj c poziom izolowania transakcji. Wi kszo serwerów pozwala ustawi (na poziomie serwera, bazy danych lub poszczególnych sesji) jeden z czterech poziomów izolowania transakcji, przedstawionych przez nas od najmniej restrykcyjnego, w którym maksymalna wspó bie no jest okupiona wyst powaniem najwi kszej liczby typów niespójno ci danych, do najbardziej restrykcyjnego, który kosztem ograniczenia wspó bie no ci gwarantuje najwy szy poziom spójno ci danych.
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
Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści
Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, 2016 Spis treści Wprowadzenie Podziękowania xiii xvii 1 Podstawy zapytań i programowania T-SQL 1 Podstawy
Obliczenia arytmetyczne. Konkatenacja pól. Aliasy kolumn. Aliasy tabel. Co dalej? Rozdział 4. Korzystanie z funkcji. Zastosowanie funkcji
O autorze Wprowadzenie Rozdział 1. Relacyjne bazy danych i SQL Język i logika Definicja SQL Microsoft SQL Server, Oracle i MySQL Inne bazy danych Relacyjne bazy danych Klucze główne i obce Typy danych
SIECI KOMPUTEROWE I BAZY DANYCH
KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I - III Cel laboratorium
SQL. Ćwiczenia praktyczne. Wydanie II
Idź do Spis treści Przykładowy rozdział Katalog książek Katalog online Zamów drukowany katalog Twój koszyk Dodaj do koszyka Cennik i informacje Zamów informacje o nowościach Zamów cennik Czytelnia Fragmenty
Baza danych. Baza danych jest to zbiór danych powi zanych mi dzy sob pewnymi zale no ciami.
Access Baza danych Baza danych jest to zbiór danych powi zanych mi dzy sob pewnymi zale no ciami. Baza danych sk ada si z danych oraz programu komputerowego wyspecjalizowanego do gromadzenia i przetwarzania
Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych. Andrzej Bąk
Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych Andrzej Bąk Wstęp Zarys Co to jest baza danych? Podstawy teorii baz danych Klasyfikacja baz danych Organizacja danych w relacyjnej
Przestrzenne bazy danych Podstawy języka SQL
Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured
Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?
Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych? 1 Podstawowe pojęcia: 2 3 4 5 Dana (ang.data) najmniejsza, elementarna jednostka informacji o obiekcie będąca przedmiotem przetwarzania
1 Przetwarzanie transakcyjne Cechy transakcji Rozpoczęcie i zakończenie Punkty bezpieczeństwa... 3
Plan wykładu Spis treści 1 Przetwarzanie transakcyjne 1 1.1 Cechy transakcji................................. 2 1.2 Rozpoczęcie i zakończenie........................... 3 1.3 Punkty bezpieczeństwa.............................
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
Język SQL : przyjazny podręcznik / Larry Rockoff. Wyd. 2. Gliwice, cop Spis treści
Język SQL : przyjazny podręcznik / Larry Rockoff. Wyd. 2. Gliwice, cop. 2017 Spis treści O autorze 9 Podziękowania 11 Wprowadzenie 13 Rozdział 1. Relacyjne bazy danych i SQL 19 Definicja SQL 21 Microsoft
Bazy danych. Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 9/15
Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 9/15 Przechowywanie danych Wykorzystanie systemu plików, dostępu do plików za pośrednictwem systemu operacyjnego
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
Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski
Bazy danych II Andrzej Grzybowski Instytut Fizyki, Uniwersytet Śląski Wykład 11 Zastosowanie PHP do programowania aplikacji baz danych Oracle Wsparcie programowania w PHP baz danych Oracle Oprócz możliwego
Spis treści. Spis treści 3
Spis treści Wprowadzenie...n... 7 Struktura książki...ą...8 Informacje zwrotne...ą...9 Konwencje typograficzne...ą...9 Podziękowania...ą...10 Przykłady kodu...ą...11 Funkcje...n... 13 Funkcje przetwarzania
Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł!
Szkolenie Oracle SQL podstawy Terminy 15 17 lutego 2010 First Minute! 1100zł! Opis szkolenia Baza danych Oracle od dawna cieszy się zasłużona sławą wśród informatyków. Jej wydajność, szybkość działania
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
Microsoft Management Console
Microsoft Management Console Konsola zarządzania jest narzędziem pozwalającym w prosty sposób konfigurować i kontrolować pracę praktycznie wszystkich mechanizmów i usług dostępnych w sieci Microsoft. Co
GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla uŝytkowników modułu wyszukiwania danych Warszawa 2007
GEO-SYSTEM Sp. z o.o. 02-732 Warszawa, ul. Podbipięty 34 m. 7, tel./fax 847-35-80, 853-31-15 http:\\www.geo-system.com.pl e-mail:geo-system@geo-system.com.pl GEO-RCiWN Rejestr Cen i Wartości Nieruchomości
Pracownia internetowa w każdej szkole. Opiekun pracowni internetowej SBS 2003 PING
Instrukcja numer PING Pracownia internetowa w każdej szkole Opiekun pracowni internetowej SBS 2003 PING Poniższe rozwiązanie opisuje, jak zapisywać i odtwarzać obrazy całych dysków lub poszczególne partycje
Systemy GIS Tworzenie zapytań w bazach danych
Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE
Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x
Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x Wersja 02 Styczeń 2016 Centrum Elektronicznych Usług Płatniczych eservice Sp. z o.o. Spis treści 1. Wstęp... 3 1.1. Przeznaczenie dokumentu...
Instalacja. Zawartość. Wyszukiwarka. Instalacja... 1. Konfiguracja... 2. Uruchomienie i praca z raportem... 4. Metody wyszukiwania...
Zawartość Instalacja... 1 Konfiguracja... 2 Uruchomienie i praca z raportem... 4 Metody wyszukiwania... 6 Prezentacja wyników... 7 Wycenianie... 9 Wstęp Narzędzie ściśle współpracujące z raportem: Moduł
PERSON Kraków 2002.11.27
PERSON Kraków 2002.11.27 SPIS TREŚCI 1 INSTALACJA...2 2 PRACA Z PROGRAMEM...3 3. ZAKOŃCZENIE PRACY...4 1 1 Instalacja Aplikacja Person pracuje w połączeniu z czytnikiem personalizacyjnym Mifare firmy ASEC
przykłady problemów; realizacja dostaw części od producenta do klienta:
Przetwarzanie transakcyjne Transakcja zestaw operacji pod szczególną kontrolą transakcja to sekwencja operacji, która musi zakończyć się sukcesem w całości - w przeciwnym wypadku musi powrócić stan początkowy
Ostatnia cena sprzeda y klienta 1.0 dodatek do Symfonia Faktura dla 1 firmy
Podr cznik u ytkownika Ostatnia cena sprzeda y klienta 1.0 dodatek do Symfonia Faktura dla 1 firmy Masz pytanie? zadzwo 693 936 046 lub napisz handel@symfoniadodatki.pl SPIS TRE CI 1. Instalacja dodatku
Projektowanie bazy danych
Projektowanie bazy danych Pierwszą fazą tworzenia projektu bazy danych jest postawienie definicji celu, założeo wstępnych i określenie podstawowych funkcji aplikacji. Każda baza danych jest projektowana
INSTRUKCJA DO PROGRAMU LICZARKA 2000 v 2.56
INSTRUKCJA DO PROGRAMU LICZARKA 2000 v 2.56 Program Liczarka 2000 służy do archiwizowania i drukowania rozliczeń z przeprowadzonych transakcji pieniężnych. INSTALACJA PROGRAMU Program instalujemy na komputerze
API transakcyjne BitMarket.pl
API transakcyjne BitMarket.pl Wersja 20140314 1. Sposób łączenia się z API... 2 1.1. Klucze API... 2 1.2. Podpisywanie wiadomości... 2 1.3. Parametr tonce... 2 1.4. Odpowiedzi serwera... 3 1.5. Przykładowy
Charakterystyka systemów plików
Charakterystyka systemów plików Systemy plików są rozwijane wraz z systemami operacyjnymi. Windows wspiera systemy FAT oraz system NTFS. Różnią się one sposobem przechowywania informacji o plikach, ale
Konfiguracja programu Outlook 2007 do pracy z nowym serwerem poczty (Exchange)
IBIB PAN, 2014-07-21 Konfiguracja programu Outlook 2007 do pracy z nowym serwerem poczty (Exchange) 1. Otwieramy Panel Sterowania, przełączamy Widok na Duże ikony (przełączanie widoków znajduje się w prawym
Wtedy wystarczy wybrać właściwego Taga z listy.
Po wejściu na stronę pucharino.slask.pl musisz się zalogować (Nazwa użytkownika to Twój redakcyjny pseudonim, hasło sam sobie ustalisz podczas procedury rejestracji). Po zalogowaniu pojawi się kilka istotnych
Zmiany w wersji 1.18 programu VinCent Office.
Zmiany w wersji 1.18 programu VinCent Office. Zmiana w sposobie wykonania aktualizacji programu. Od wersji 1.18 przy instalowaniu kolejnej wersji programu konieczne jest uzyskanie klucza aktywacyjnego.
Warunki Oferty PrOmOcyjnej usługi z ulgą
Warunki Oferty PrOmOcyjnej usługi z ulgą 1. 1. Opis Oferty 1.1. Oferta Usługi z ulgą (dalej Oferta ), dostępna będzie w okresie od 16.12.2015 r. do odwołania, jednak nie dłużej niż do dnia 31.03.2016 r.
Symfonia Produkcja Instrukcja instalacji. Wersja 2013
Symfonia Produkcja Instrukcja instalacji Wersja 2013 Windows jest znakiem towarowym firmy Microsoft Corporation. Adobe, Acrobat, Acrobat Reader, Acrobat Distiller są zastrzeżonymi znakami towarowymi firmy
Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bazy danych 9. SQL Klucze obce Transakcje
Bazy danych 9. SQL Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Klucze obce Klucze obce powiazanie indeksowanej kolumny jakiejś tabeli z indeksowana kolumna
System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy
System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy modelowaniem, a pewien dobrze zdefiniowany sposób jego
Instrukcja instalacji oprogramowania TSG wer. 5.0 z dost pem do danych poprzez sie Internet.
Instrukcja instalacji oprogramowania TSG wer. 5.0 z dost pem do danych poprzez sie Internet. 1. Pobieramy najnowsz wersj oprogramowania z lokalizacji 2. ftp://ftp.cait.com.pl/public/tmp/tsg_500_full.exe
Ładowanie i reorganizacja
Ładowanie i reorganizacja danych Cele Ładowanie danych za pomocą wstawiania ścieżką bezpośrednią Ładowanie danych do tabel Oracle za pomocą ścieżki konwencjonalnej oraz bezpośredniej SQL*Loader Reorganizacja
VinCent Office. Moduł Drukarki Fiskalnej
VinCent Office Moduł Drukarki Fiskalnej Wystawienie paragonu. Dla paragonów definiujemy nowy dokument sprzedaży. Ustawiamy dla niego parametry jak podano na poniższym rysunku. W opcjach mamy możliwość
Instrukcja obsługi Norton Commander (NC) wersja 4.0. Autor: mgr inż. Tomasz Staniszewski
Instrukcja obsługi Norton Commander (NC) wersja 4.0 Autor: mgr inż. Tomasz Staniszewski ITM Zakład Technologii Maszyn, 15.10.2001 2 1.Uruchomienie programu Aby uruchomić program Norton Commander standardowo
Harmonogramowanie projektów Zarządzanie czasem
Harmonogramowanie projektów Zarządzanie czasem Zarządzanie czasem TOMASZ ŁUKASZEWSKI INSTYTUT INFORMATYKI W ZARZĄDZANIU Zarządzanie czasem w projekcie /49 Czas w zarządzaniu projektami 1. Pojęcie zarządzania
Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM
Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM PROGRAM INWENTARYZACJI Poznań 2011 Spis treści 1. WSTĘP...4 2. SPIS INWENTARZA (EWIDENCJA)...5 3. STAŁE UBYTKI...7 4. INTERPRETACJA ZAŁĄCZNIKÓW
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
Sieci komputerowe cel
Sieci komputerowe cel współuŝytkowanie programów i plików; współuŝytkowanie innych zasobów: drukarek, ploterów, pamięci masowych, itd. współuŝytkowanie baz danych; ograniczenie wydatków na zakup stacji
1. Korzyści z zakupu nowej wersji... 2. 2. Poprawiono... 2. 3. Zmiany w słowniku Stawki VAT... 2. 4. Zmiana stawki VAT w kartotece Towary...
Forte Handel 1 / 8 Nowe funkcje w module Forte Handel w wersji 2011a Spis treści: 1. Korzyści z zakupu nowej wersji... 2 2. Poprawiono... 2 Nowe funkcje w module Forte Handel w wersji 2011 Spis treści:
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
Instrukcja wprowadzania ocen do systemu USOSweb
Instrukcja wprowadzania ocen do systemu USOSweb Uwaga! Niniejsza instrukcja nie stanowi pe nego opisu wszystkich funkcji systemu USOSweb. Zawiera ona jedynie informacje niezb dne do pomy lnego wprowadzania
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.
System kontroli wersji SVN
System kontroli wersji SVN Co to jest system kontroli wersji Wszędzie tam, gdzie nad jednym projektem pracuje wiele osób, zastosowanie znajduje system kontroli wersji. System, zainstalowany na serwerze,
Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl
Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność
Ogólna charakterystyka kontraktów terminowych
Jesteś tu: Bossa.pl Kurs giełdowy - Część 10 Ogólna charakterystyka kontraktów terminowych Kontrakt terminowy jest umową pomiędzy dwiema stronami, z których jedna zobowiązuje się do nabycia a druga do
emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)
emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce) Zastosowanie Rozszerzenie to dedykowane jest sklepom internetowych zbudowanym w oparciu
SINAMICS G120C STARTER. Tworzenie nowego projektu w trybie online.
SINAMICS G120C STARTER Tworzenie nowego projektu w trybie online. 1 Uruchomienie asystenta tworzenia projektu 1 2 3 page 2 W celu uruchomienia asystenta tworzenia nowego projektu nale y z menu (1) programu
Instrukcja Obsługi STRONA PODMIOTOWA BIP
Instrukcja Obsługi STRONA PODMIOTOWA BIP Elementy strony podmiotowej BIP: Strona podmiotowa Biuletynu Informacji Publicznej podzielona jest na trzy części: Nagłówek strony głównej Stopka strony podmiotowej
Program szkoleniowy Efektywni50+ Moduł III Standardy wymiany danych
Program szkoleniowy Efektywni50+ Moduł III 1 Wprowadzenie do zagadnienia wymiany dokumentów. Lekcja rozpoczynająca moduł poświęcony standardom wymiany danych. Wprowadzenie do zagadnień wymiany danych w
Instrukcja programu PControl Powiadowmienia.
1. Podłączenie zestawu GSM. Instrukcja programu PControl Powiadowmienia. Pierwszym krokiem w celu uruchomienia i poprawnej pracy aplikacji jest podłączenie zestawu GSM. Zestaw należy podłączyć zgodnie
Ustawienie na poziomie sesji (działa do zmiany lub zakończenia sesji zamknięcia połączenia).
POZIOMY IZOLACJI TRANSAKCJI 1. Microsoft SQL Server 2012 (od SQL Server 2005) W systemie SQL Server można wybrać sposób sterowania współbieżnością. Podstawowy sposób to stosowanie blokad. Wykorzystywane
Systemy mikroprocesorowe - projekt
Politechnika Wrocławska Systemy mikroprocesorowe - projekt Modbus master (Linux, Qt) Prowadzący: dr inż. Marek Wnuk Opracował: Artur Papuda Elektronika, ARR IV rok 1. Wstępne założenia projektu Moje zadanie
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
P o d s t a w y j ę z y k a S Q L
P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p
Edycja geometrii w Solid Edge ST
Edycja geometrii w Solid Edge ST Artykuł pt.: " Czym jest Technologia Synchroniczna a czym nie jest?" zwracał kilkukrotnie uwagę na fakt, że nie należy mylić pojęć modelowania bezpośredniego i edycji bezpośredniej.
SpedCust 5 instrukcja instalacji
SpedCust 5 instrukcja instalacji jedno- i wielostanowiskowej Schenker Sp. z o.o. Imię i nazwisko Oddział Miejscowość, data INSTRUKCJA INSTALACJI SpedCust5 Aby zainstalować i uruchomić system niezbędne
Warszawska Giełda Towarowa S.A.
KONTRAKT FUTURES Poprzez kontrakt futures rozumiemy umowę zawartą pomiędzy dwoma stronami transakcji. Jedna z nich zobowiązuje się do kupna, a przeciwna do sprzedaży, w ściśle określonym terminie w przyszłości
SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści
SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop. 2016 Spis treści O autorach 11 Podziękowania 12 Część I Wprowadzenie do języka SQL 13 Godzina 1. Witamy w świecie języka SQL 15
Szkolenie autoryzowane. MS Tworzenie zapytań do Microsoft SQL Server Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje
Szkolenie autoryzowane MS 10774 Tworzenie zapytań do Microsoft SQL Server 2012 Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Opis szkolenia Uwaga! Szkolenie wycofane z oferty. Zapraszamy
Projektowanie Systemów Inf.
Projektowanie Systemów Inf. Wykład V Kwerendy Copyrights by Arkadiusz Rzucidło 1 Wprowadzenie Istotą bazy danych jest możliwość efektywnego wyszukiwania informacji Realizację operacji wyszukiwania zapewniają
Bazy danych SQL Server 2005
Bazy danych SQL Server 2005 TSQL Michał Kuciapski Typ zadania: Podstawowe zapytania Select Zadanie 1: Wyświetl następujące informacje z bazy: A. 1. Wyświetl informacje o klientach: nazwa firmy, imie, nazwisko,
PL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Przypomnienie kursorów Przypomnienie procedur i funkcji składowanych Poznanie pakietów składowanych 2 Bazę danych Oracle możemy traktować jakby była złożona z dwóch
Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące.
Programowanie II prowadzący: Adam Dudek Lista nr 8 Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące. Jest to najważniejsza cecha świadcząca o sile programowania
PODRĘCZNIK UŻYTKOWNIKA
PODRĘCZNIK UŻYTKOWNIKA ENGLISH NEDERLANDS DEUTSCH FRANÇAIS ESPAÑOL ITALIANO PORTUGUÊS POLSKI ČESKY MAGYAR SLOVENSKÝ SAFESCAN MC-Software OPROGRAMOWANIE DO LICZENIA PIENIĘDZY SPIS TREŚCI WPROWADZENIE I
Instrukcja zarządzania systemem informatycznym służącym do przetwarzania danych osobowych
Załącznik nr 1 do Zarządzenia Nr 1/2013 Dyrektora Zespołu Obsługi Szkół i Przedszkoli w Muszynie z dnia 30 grudnia 2013 r. Instrukcja zarządzania systemem informatycznym służącym do przetwarzania danych
1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9.
Plan wykładu Spis treści 1 DML - zapytania, część II 1 1.1 Grupowanie................................... 1 1.2 Operatory zbiorowe............................... 5 2 DML - modyfikacja 7 3 DCL - sterowanie
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
PoniŜszy dokument zawiera opis konfiguracji programu STEP7 dla sterowników SIMATIC S7 300/S7 400, w celu stworzenia komunikacji między dwoma stacjami S7 300 za pomocą sieci Industrial Ethernet, protokołu
zgubił całą naszą korespondencję Można by tak wymieniać bez bezpieczeństwa, gdyby była wykonana dnia poprzedniego rozwiązałaby niejeden problem.
Zasada działania usługi Business Safe jest prosta. Zainstalowany na Twoim komputerze progra Dlaczego backupować? Któż z nas nie zna smaku tego okropnego uczucia, gdy włączając kompuuter, który jeszcze
Internetowe bazy danych
Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 3 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Typy tabel MySQL domyślny MyISAM inne możliwe:
INFORMATOR TECHNICZNY WONDERWARE
Informator techniczny nr 95 04-06-2007 INFORMATOR TECHNICZNY WONDERWARE Synchronizacja czasu systemowego na zdalnych komputerach względem czasu systemowego na komputerze z serwerem Wonderware Historian
Wykład 8 Ochrona danych wprowadzenie Sterowanie dostępem do danych Sterowanie przepływem danych Ograniczanie możliwości wnioskowania Szyfrowanie
Wykład 8 Ochrona danych wprowadzenie Sterowanie dostępem do danych Sterowanie przepływem danych Ograniczanie możliwości wnioskowania Szyfrowanie 1 Sterowanie dostępem (przyznawanie prawa dostępu) polega
Opis modułu analitycznego do śledzenia rotacji towaru oraz planowania dostaw dla programu WF-Mag dla Windows.
Opis modułu analitycznego do śledzenia rotacji towaru oraz planowania dostaw dla programu WF-Mag dla Windows. Zadaniem modułu jest wspomaganie zarządzania magazynem wg. algorytmu just in time, czyli planowanie
SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek
SELECT SELECT kolumna1, kolumna2,, kolumnan FROM tabela wybrane kolumny SELECT * FROM tabela wszystkie kolumny select * from Orders select CustomerID, CompanyName, Country from Customers WHERE SELECT *
Kopia zapasowa i odzyskiwanie Podręcznik użytkownika
Kopia zapasowa i odzyskiwanie Podręcznik użytkownika Copyright 2009 Hewlett-Packard Development Company, L.P. Windows jest zastrzeżonym znakiem towarowym firmy Microsoft Corporation, zarejestrowanym w
System Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy
Instrukcja obsługi programu 2.11. Przygotowanie programu do pracy - ECP Architektura inter/intranetowa System Informatyczny CELAB Przygotowanie programu do pracy - Ewidencja Czasu Pracy Spis treści 1.
Instrukcje BEGIN TRAN i COMMIT TRAN powodują, że umieszczone pomiędzy nimi polecenia są wykonywane jako całość:
Transakcje Transakcje zwykle składają się z kilku odczytujących i modyfikujących bazę danych instrukcji SQL. Transakcja jest rozpatrywana z punktu widzenia serwera. Określa ona, ile pracy wykona SQL Server,
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
Regu g l u a l min i n w s w pó p ł ó p ł r p acy O ow o iązuje od dnia 08.07.2011
Regulamin współpracy Obowiązuje od dnia 08.07.2011 1 1. Wstęp Regulamin określa warunki współpracy z firmą Hubert Joachimiak HubiSoft. W przypadku niejasności, prosimy o kontakt. Dane kontaktowe znajdują
1. Podstawy budowania wyra e regularnych (Regex)
Dla wi kszo ci prostych gramatyk mo na w atwy sposób napisa wyra enie regularne które b dzie s u y o do sprawdzania poprawno ci zda z t gramatyk. Celem niniejszego laboratorium b dzie zapoznanie si z wyra
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
Postanowienia ogólne. Usługodawcy oraz prawa do Witryn internetowych lub Aplikacji internetowych
Wyciąg z Uchwały Rady Badania nr 455 z 21 listopada 2012 --------------------------------------------------------------------------------------------------------------- Uchwała o poszerzeniu możliwości
Spis treści. Rozdział 1 ewyniki. mmedica - INSTR UKC JA UŻYTKO W NIKA
Wersja 5.1.9 Spis treści Rozdział 1 1.1 1.1.1 1.1.2 1.2 1.3 1.4 1.5 I Konfiguracja... 1-1 OID świadczeniodawcy... 1-2 Dodanie... instytucji zewnętrznej 1-4 Dodanie... zlecenia 1-11 Pobranie... materiału
BAZY DANYCH. Transakcje. opracowanie: Michał Lech
BAZY DANYCH Transakcje opracowanie: Michał Lech Plan wykładu 1. Transakcje - co to jest? 2. Mechanizmy transakcji 3. Reguły ACID 4. Niekorzystne zjawiska 5. Poziomy izolacji 6. Polecenia PostgreSQL transakcji
Wprowadzenie do projektowania i wykorzystania baz danych. Katarzyna Klessa
Wprowadzenie do projektowania i wykorzystania baz danych Katarzyna Klessa POWTÓRKA Z PIERWSZYCH ZAJĘĆ Lista słówek - do zapamiętania na początek Z podstaw SQL: CREATE - Tworzenie tabeli, czyli Coś czego
Instrukcja dotycząca generowania klucza dostępowego do Sidoma v8
Szanowni Państwo! Instrukcja dotycząca generowania klucza dostępowego do Sidoma v8 Przekazujemy nową wersję systemu SidomaOnLine v8. W celu zalogowania się do systemu niezbędny jest nowy klucz dostępu,
Zainstalowana po raz pierwszy aplikacja wymaga aktualizacji bazy danych obsługiwanych sterowników.
FRISKO-MOBILE Aplikacja FRISKO-MOBILE przeznaczona jest do zdalnej obsługi sterowników FRISKO podłączonych do sieci LAN o stałym adresie IP za pośrednictwem wbudowanych lub zewnętrznych modułów komunikacyjnych.
I. Zakładanie nowego konta użytkownika.
I. Zakładanie nowego konta użytkownika. 1. Należy wybrać przycisk załóż konto na stronie głównej. 2. Następnie wypełnić wszystkie pola formularza rejestracyjnego oraz zaznaczyć akceptację regulaminu w
INSTRUKCJA OBSŁUGI URZĄDZENIA: 0101872HC8201
INSTRUKCJA OBSŁUGI URZĄDZENIA: PZ-41SLB-E PL 0101872HC8201 2 Dziękujemy za zakup urządzeń Lossnay. Aby uŝytkowanie systemu Lossnay było prawidłowe i bezpieczne, przed pierwszym uŝyciem przeczytaj niniejszą
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umoŝliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.