Programowanie zaawansowane w T-SQL
|
|
- Zuzanna Niewiadomska
- 6 lat temu
- Przeglądów:
Transkrypt
1 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... 3 Przykładowy problem... 3 Podstawy teoretyczne... 3 Przykładowe rozwiązanie... 6 Porady praktyczne... 6 Uwagi dla studenta... 7 Dodatkowe źródła informacji... 7 Laboratorium podstawowe... 8 Problem 1 (czas realizacji 30 minut)... 8 Problem 2 (czas realizacji 15 minut) Laboratorium rozszerzone Zadanie 1 (czas realizacji 90 min)... 12
2 Informacje o module Opis modułu Programowanie w języku zapytań to ważna umiejętność. Powinni ją opanować zarówno programiści, jak i administratorzy. Różne dialekty języka SQL oferują różne składnie, jednak reguły, jakimi powinien kierować się tworzący kod, są te same niezależnie od systemu zarządzania bazami danych. W module tym znajdziesz informację na temat zaawansowanego programowania w T-SQL. Dowiesz się w jaki sposób korzystać z instrukcji sterujących, kursorów oraz jak funkcjonuje obsługa błędów. Cel modułu Celem modułu jest zapoznanie czytelnika z zaawansowanymi elementami języka T-SQL, takimi jak instrukcje sterujące, kursory, obsługa błędów itp. Uzyskane kompetencje Po zrealizowaniu modułu będziesz: potrafił użyć instrukcji sterujących w języku T-SQL rozumiał sposób działania i funkcjonowania kursorów wiedział, w jaki sposób działa obsługa błędów Wymagania wstępne Przed przystąpieniem do pracy z tym modułem powinieneś: potrafić stworzyć bazę danych wraz z jej podstawowymi obiektami (patrz: moduł 3) potrafić napisać podstawowe instrukcje w języku T-SQL DCL i T-SQL DDL (patrz: moduł 5) potrafić pisać zapytania w języku T-SQL DML (patrz: moduł 6) rozumieć podstawową składnię języka T-SQL 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 i 6. Rys. 1 Mapa zależności modułu Strona 2/12
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 elementy 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. Również od niego w pewnym stopniu zależy bezpieczeństwo danych gromadzonych w bazie. W związku z tym powinien on dysponować odpowiednią wiedzą i posiadać pewne umiejętności z zakresu zaawansowanego programowania w języku T-SQL. Znajomość tego języka oraz dobre nawyki wynikające z praktyki programowania są bardzo ważne. Podstawowymi składowymi języka T-SQL są instrukcje sterujące, kursory i obsługa błędów. Podstawy teoretyczne Język T-SQL stale ewoluuje. Z języka zapytań stał się właściwie językiem programowania baz danych. Programiści tworzący oprogramowanie mogą łatwo nauczyć się T-SQL dzięki istniejącym analogiom do tradycyjnych języków programowania proceduralnego. Jednymi z częściej używanych konstrukcji są instrukcje sterujące. Instrukcje sterujące Instrukcja sterująca IF ELSE daje możliwość warunkowego wykonywania bloków kodu. W implementacji T-SQL wygląda ona jak poniżej: IF warunek_logiczny ELSE Należy zwrócić uwagę, że jeśli blok po słowie IF lub ELSE składa się z wielu linii kodu, musisz użyć składni BEGIN END. Wówczas: IF warunek_logiczny BEGIN END ELSE BEGIN END Poniższy kod przedstawia przykładowe użycie instrukcji sterującej IF ELSE: > 100 PRINT 'Zmienna jest większa niż 100' ELSE BEGIN PRINT 'Zmienna jest mniejsza niż 100' = 0 -- zerowanie zmiennej END Kolejna instrukcja sterująca to pętla WHILE. W T-SQL wygląda ona następująco: WHILE wyrazenie_logiczne Strona 3/12
4 [ BREAK ] [ CONTINUE ] Wyrażenie logiczne powinno zwracać wartość TRUE lub FALSE. Podobnie jak w przypadku instrukcji sterującej IF ELSE, jeśli wyrażenie SQL składa się z wielu linii kodu, musisz użyć właśnie składni BEGIN END. W instrukcji WHILE występują dwie istotne instrukcje: BREAK powoduje wyjście z pętli WHILE CONTINUE powoduje rozpoczęcie kolejnej interacji pętli WHILE Poniższy kod przedstawia przykładowe użycie instrukcji sterującej WHILE: int = 0 < 10 BEGIN PRINT 'Iteracja nr ' + CAST(@zmienna AS varchar(2)) + 1 END Należy pamiętać, że pętla WHILE może być wykonywana w nieskończoność, jeśli programista nie zapewni wyjścia z pętli. Kursory Kursor to obiekt, który umożliwia poruszanie się po wynikach zapytania rekord po rekordzie. Umożliwia on przetwarzanie rekordów jeden po drugim, co daje możliwość zaawansowanego formatowania wyników wyszukiwania danych (ale w ściśle określonej kolejności, determinowanej przez wynik zapytania użytego w definicji kursora). Deklaracja kursora w języku T-SQL wygląda następująco: DECLARE nazwa_kursora CURSOR [ { LOCAL GLOBAL } ] [ { FORWARD_ONLY SCROLL } ] [ { STATIC KEYSET DYNAMIC FAST_FORWARD } ] [ { READ_ONLY SCROLL_LOCKS OPTIMISTIC } ] [ TYPE_WARNING ] FOR wyrazenie_select [ FOR UPDATE [ OF nazwa_kolumny [, n] ] ] [;] Poniższy kod przedstawia przykładowe użycie kursora: DECLARE Employee_Cursor CURSOR FOR SELECT LastName, FirstName FROM Northwind.dbo.Employees WHERE LastName like 'B%' OPEN Employee_Cursor FETCH NEXT FROM Employee_Cursor = 0 BEGIN FETCH NEXT FROM Employee_Cursor END CLOSE Employee_Cursor DEALLOCATE Employee_Cursor Strona 4/12
5 Składnia specjalna Nowoczesne dialekty języka SQL obfitują w specjalne elementy składniowe, które znacznie rozszerzają jego funkcjonalność. Przykładem takiej składni może być PIVOT. Składnia ta umożliwia stworzenie tabeli wynikowej z zapytania SELECT, w której w nagłówkach wierszy i kolumn znajdują się wartości z tabel źródłowych. USE AdventureWorks SELECT VendorID, [164] AS Emp1, [198] AS Emp2, [223] AS Emp3, [231] AS Emp4, [233] AS Emp5 FROM (SELECT PurchaseOrderID, EmployeeID, VendorID FROM Purchasing.PurchaseOrderHeader) p PIVOT ( COUNT (PurchaseOrderID) FOR EmployeeID IN ( [164], [198], [223], [231], [233] ) ) AS pvt ORDER BY VendorID; Zapytanie zamieszczony powyżej może przykładowo wygenerować następujący wynik: VendorID Emp1 Emp2 Emp3 Emp4 Emp Powyższy wynik obrazuje możliwości tej składni, umożliwiając zbudowanie tabeli wyświetlającej ilość zamówień u wybranych producentów, dokonanych przez pięciu pracowników (każdy pracownik o określonym EmployeeID). Obsługa błędów W trakcie wykonywania kodu SQL mogą wystąpić nieprzewidziane błędy, wynikające z różnych przyczyn. Mogą to być błędy powstałe wskutek narzuconych w bazie danych ograniczeń lub na przykład błędy spowodowane próbami wykonania niedozwolonych operacji. Wykrycie tych błędów i odpowiednia reakcja na nie to zadanie dla programisty baz danych. Błędy wykrywamy najczęściej w: transakcjach po wykryciu błędu wycofujemy transakcję procedurach składowanych wykrywamy błędy powstałe głównie w wyniku niepoprawnych wartości parametrów podanych przez użytkownika wyzwalaczach podobnie jak w transakcjach, po napotkaniu błędu wycofywana jest transakcja wywołująca wyzwalacz blokach kodu SQL wszelkie rozbudowane bloki kodu wymagają wykrywania błędów Metod pozwalających na wykrycie błędów jest wiele. Można zastosować instrukcje sterujące, np. IF ELSE, do sprawdzania wartości zmiennych, by w ten sposób zapobiegać wystąpieniu błędów. Drugą metodą jest wykorzystanie istniejących w systemie zarządzania bazami danych funkcji pozwających wykrywać błędy. W systemie Microsoft SQL Server taką funkcją która zwraca numer ostatnio napotkanego błędu w bieżącej sesji. Aktualnie istnieją także inne, przez wielu uznawane za lepsze metody wykrywania i obsługi błędów. Chodzi o strukturalną obsługę wyjątków. Przez wyjątek rozumiemy błąd, który wymaga obsługi. Poniżej pokazano składnię TRY CATCH (ang. try próbuj, catch przechwyć): Strona 5/12
6 BEGIN TRY END TRY BEGIN CATCH END CATCH Jeśli wyrażenie SQL składa się z wielu linii kodu, podobnie jak w przypadku instrukcji sterujących IF ELSE i WHILE musisz użyć składni BEGIN END. Przykładowe rozwiązanie Przykładowe użycie instrukcji sterującej Rozważmy przykład, w którym średnia cena produktu jest mniejsza od 100 zł. Jeżeli maksymalna cena jest większa od 300 zł, wówczas w pętli WHILE podwajamy ją. Pętla ta wykonuje się do momentu, gdy maksymalna cena jest większa od 300 zł. Po spełnieniu warunku wychodzimy z pętli i wyświetlamy komunikat dla użytkownika. USE AdventureWorks; WHILE (SELECT AVG(ListPrice) FROM Production.Product) < 100 BEGIN UPDATE Production.Product SET ListPrice = ListPrice * 2 SELECT MAX(ListPrice) FROM Production.Product IF (SELECT MAX(ListPrice) FROM Production.Product) > 300 BREAK END PRINT 'Wyświetlony komunikat po wyjściu z pętli'; Przykładowe użycie TRY CATCH Poniższy fragment kodu obrazuje przykładową obsługę wyjątków przy pomocy składni TRY CATCH. W celu zilustrowania obsługi błędów, wewnątrz bloku TRY dokonujemy dzielenia przez zero, które jest niewykonalne. Wówczas wywoływany jest wyjątek, który jest przechwytywany w bloku CATCH. Po przechwyceniu wyjątku wyświetlany jest odpowiedni komunikat zdefiniowany przez programistę. BEGIN TRY -- generujemy błąd SELECT 1/0; END TRY BEGIN CATCH -- obsługujemy błąd RAISERROR('Nie dzielimy przez zero',16,1) END CATCH Porady praktyczne Funkcja wykrywania zwraca numer ostatniego błędu lub 0, jeśli wykonanie polecenia T-SQL zakończyło się powodzeniem. Na poniższym przykładzie pokazano użycie do sprawdzenia naruszenia ograniczenia, do którego może dojść w sytuacji modyfikacji danych: UPDATE EmployeePayHistory SET PayFrequency = 4 WHERE EmployeeID = 1 = 547 Strona 6/12
7 PRINT 'naruszone ograniczenie.' Informacje na temat błędu mogą być uzyskiwane przy użyciu funkcji ERROR_NUMBER (numer błędu) i ERROR_MESSAGE (komunikat błędu). SQL Server udostępnia trzy rodzaje programowalnych obiektów: funkcje, procedury składowane i wyzwalacze. W celu poprawnego pisania elementów programowalnych należy znać zaawansowane elementy języka T-SQL. Zamiast wykonywania pojedynczego polecenia lub komendy, obiekty te umożliwiają tworzenie bogatej logiki programistycznej, która zawiera pętle, kontrolę przepływu, podejmowanie decyzji i rozwidlenia. Zdolność do uruchamiania transakcji i przeznaczenie ich do pozostawienia lub wycofania nie wystarczy do efektywnego radzenia sobie z problemem. W tym przypadku niezbędnym składnikiem jest zdolność do programowanego wykrywania i obsłużenia błędów. Wewnątrz bloku CATCH możemy ustalić co spowodowało błąd i przekazać informacje na jego temat używając systemu obsługi błędów języka T-SQL. Najczęściej używanymi funkcjami tego rodzaju są ERROR_NUMBER i ERROR_MESSAGE. Zwracają one numer i opis błędu. Używając funkcji ERROR_NUMBER i ERROR_MESSAGE w bloku instrukcji CATCH możemy zdecydować, czy potrzeba użyć ROLLBACK do cofnięcia transakcji. Uwagi dla studenta Jesteś przygotowany do realizacji laboratorium jeśli: rozumiesz, co oznacza instrukcja sterująca rozumiesz zasadę działania kursorów umiesz zdefiniować prostą pętlę umiesz podać przykład obsługi błędów 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. Kalen Delaney, Microsoft SQL Server 2005: Rozwiązania praktyczne krok po kroku, Microsoft Press, 2006 W książce autor w przystępny i zrozumiały sposób przedstawia podstawowe mechanizmy zaawansowanego programowania w języku T-SQL. Książka polecana szczególnie dla osób początkujących. 2. Edward Whalen, Microsoft SQL Server 2005 Administrator s Companion, Microsoft Press, 2006 W książce autor pokazał zaawansowane mechanizmy programowania w języku T-SQL, które mogą zostać wykorzystane do programowania w bazach danych takich obiektów jak funkcje, procedury składowane, wyzwalacze i transakcje. Pozycja szczególnie polecana dla osób chcących poszerzyć swoją wiedzę na temat programowania baz danych. 3. Deren Bieniek, Randy Dyess, Mike Hotek, Javier Loria, Adam Machanic, Antonio Soto, Adolfo Wiernik, SQL Server Implementacja i obsługa, APN Promise, 2006 W książce tej, podobnie jak w powyższej pozycji, przedstawiono elementy zaawansowanego programowania w języku T-SQL. Pokazano praktyczne zastosowanie zaawansowanych mechanizmów T-SQL. Książka polecana dla osób początkujących, jak również chcących poszerzyć swoją wiedzę. Strona 7/12
8 Laboratorium podstawowe Problem 1 (czas realizacji 30 minut) Jesteś administratorem 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 dotąd na Twoim wydziale. Zadanie jakie przed Tobą stoi to stworzenie zaawansowanego mechanizmu wybierania danych z twojej bazy danych oraz przedstawienie tych danych w odpowiedniej formie. Zadanie 1. Nawiąż połączenie z SQL Server Przetestuj instrukcję sterującą CASE 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\Lab06\Case.sql. Zaznacz i uruchom kod ze skryptu Case.sql. Wynik działania pokazano na rys. 2. USE PraceDyplomowe SELECT C.Nazwisko, C.Imie, CASE WHEN E.ID_Ocena = '2' THEN 'trzy' ELSE 'inna' END AS Gender FROM Ocena E INNER JOIN Osoba C ON E.ID_Ocena = C.ID_Osoby Strona 8/12
9 Rys. 2 Wynik działania skryptu z użyciem instrukcji CASE 3. Zastosuj stronicowanie danych Z menu głównego wybierz File -> Open -> File. Odszukaj pliku C:\Labs\Lab06\Stronicowanie.sql Zaznacz i uruchom kod ze skryptu Stronicowanie.sql. Wynik działania pokazano na rys. 3. USE PraceDyplomowe SELECT T.Nazwisko FROM ( SELECT Nazwisko, ROW_NUMBER() OVER(ORDER BY ID_Stopnian) AS Pozytywna FROM Osoba ) AS T WHERE T.Pozytywna BETWEEN 2 AND 6 Strona 9/12
10 Problem 2 (czas realizacji 15 minut) Rys. 3 Wynik stronicowania danych Powyższe zapytanie stanowi rozwiązanie problemu stronicowania danych. W tym wypadku wynikiem jest lista osób z tabeli Osoby, przy czym wyświetlone zostają nazwiska osób, które z pracy otrzymały ocenę pomiędzy 3 a 5, biorąc pod uwagę sortowanie według kolumny ID_Stopnian. Zapytanie zadziała tak samo, nawet gdy numeracja w tej kolumnie nie będzie ciągła. Wykorzystuje ono podzapytanie, w którym dla każdego wiersza generowana jest liczba porządkowa za pomocą funkcji ROW_NUMBER (funkcja ta musi przed generowaniem wartości określić kryterium sortowania, stąd klauzula ORDER BY). Kolejne zadanie związane z rozbudową systemu prac dyplomowych jakie przed Tobą stoi to oprogramowanie obsługi błędów (przechwytywanie i obsługa) z użyciem zaawansowanych mechanizmów, jakimi dysponuje SQL Server. Zadanie 1. Nawiąż połączenie z SQL Server Utwórz tabelę archiwizacji błędów 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 pliku C:\Labs\Lab09\Errors.sql Zaznacz i uruchom kod ze skryptu Errors.sql, który tworzy tabele, w której będą zapisywane informacje o błędach Strona 10/12
11 3. Przechwytywa nie błędów 4. Przeglądanie informacji o wystąpieniu błędu -- (1) Ustawiamy się na baze danych PraceDyplomowe USE PraceDyplomowe -- (2) Tworzymy tabele w ktorej bedzie przechowywana informacja o -- bledach CREATE TABLE TabelaBledow ( ErrorID int IDENTITY(1,1) PRIMARY KEY, ErrorNumber int NOT NULL, ErrorMessage nvarchar(200) NOT NULL, ErrorDate datetime DEFAULT GETDATE() ) Powyższy kod tworzy tabelę TabelaBledow, która będzie zawierała informacje o występujących błędach. W kolumnie ErrorNumber zapisany zostanie numer błędu, w kolumnie ErrorMessage komunikat błędu, zaś w kolumnie ErrorDate data i godzina wystąpienia błędu (wartość domyślna bieżąca data i czas jest generowana przy pomocy funkcji systemowej GETDATE). Zaznacz i uruchom (F5) poniższy fragment kodu: -- (3) Implementacja obslugi przechwytywania bledow BEGIN TRY SELECT 1/0 END TRY BEGIN CATCH INSERT TabelaBledow(ErrorNumber, ErrorMessage) SELECT ERROR_NUMBER(), ERROR_MESSAGE() END CATCH Zaznacz i uruchom (F5) poniższy fragment kodu: -- (4) Wyswietlenie zawartosci tabeli bledow SELECT * FROM TabelaBledow Wynik działania pokazano na rys. 4. Rys. 4 Informacja o błędzie Strona 11/12
12 Laboratorium rozszerzone Zadanie 1 (czas realizacji 90 min) 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 celu spełnienia pewnych standardów. W związku z modernizacją systemu bazodanowego najprawdopodobniej ulegną zmianie pewne metody wybierania danych. Wydaje się zasadne stworzenie bardziej wyrafinowanych metod wybierania danych w oparciu o zaawansowane konstrukcje języka T-SQL. Prawdopodobnie również w związku z wejściem na wyższy poziom programowania w T-SQL będziesz musiał wprowadzić strukturalną obsługę błędów. Zadanie jakie przed Toba stoi to: 1. Podjęcie decyzji, które zapytania w bazie danych pozostaną bez zmian, które zostaną zmodyfikowane i zastąpione czymś bardziej złożonym wykorzystując zaawansowane możliwości języka T-SQL, a które będą musiały zostać całkowicie usunięte. 2. Zaplanowanie struktury obsługi błędów dla zapytań istniejących w systemie bazodanowym. Strona 12/12
124 Bazy danych. Zaawansowane programowanie w T- SQL
124 Bazy danych Zaawansowane programowanie w T- SQL Bazy danych 125 Przegląd zagadnień Skladnie T-SQL Obsluga bledów Podsumowanie Laboratorium Znajomość języka SQL, jakim posługuje się SZBD, jest bardzo
Bardziej szczegółowoKursory. A. Pankowska 1
Kursory 1 Kursory Kursor jest mechanizmem pozwalającym obsłużyć zbiór zawierający wiele wierszy danych (generowany np. poleceniem SELECT). Jak wskaźnik przebiega on po kolejnych krotkach ze zbioru danych,
Bardziej szczegółowoDECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Bardziej szczegółowoPaweł Rajba
Paweł Rajba pawel@cs.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Używanie kursorów Rodzaje kursorów Praca z kursorami Co to jest kursor? Cykl życia kursora utworzenie pobieranie wartości ewentualnie
Bardziej szczegółowoProgramowanie w SQL. definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE,
Programowanie w SQL definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE, kontynuacja działania od instrukcji za podaną etykietą GOTO etykieta, wyjście bezwarunkowe
Bardziej szczegółowoAdministracja 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 5 Kursory w SQL Serverze Wprowadzenie Modele kursorów Używanie kursorów Rodzaje kursorów Praca
Bardziej szczegółowoITA-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ółowoW SQL Serwerze 2008 wprowadzono parametry tablicowe (Table Valued Parameters - TVP).
Procedury składowane c.d. Parametry tablicowe w Transact-SQL. W SQL Serwerze 2008 wprowadzono parametry tablicowe (Table Valued Parameters - TVP). Zadanie 1. Proszę napisad procedurę składowaną, która
Bardziej szczegółowoBlaski 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ółowoWł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ółowoDECLARE 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ółowoOracle11g: 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ółowoPL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD
Bardziej szczegółowoTworzenie 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ółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych
Plan wykładu BAZY DANYCH II WYKŁAD 3 Zasięg zmiennych Zmienne powiązane Instrukcje warunkowe Pętle Pobieranie danych SQL w PL/SQL Rekordy dr inż. Agnieszka Bołtuć Zasięg zmiennych Zmienna jest dostępna
Bardziej szczegółowoPODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
Bardziej szczegółowoWprowadzenie 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ółowo15. Funkcje i procedury składowane PL/SQL
15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp
Bardziej szczegółowo41. Zmienne lokalne muszą mieć nazwę, którą poprzedza (maksymalnie 128 znaków) oraz typ (każdy z wyjątkiem: text, ntext oraz image)
Elementy języka T-SQL 40. Polecenie PRINT jest wykorzystywane do przekazania wiadomości tekstowej (maksymalna długość 8000 znaków) Przykład PRINT 'Aktualna data: '+convert(char(8),getdate()) PRINT 'Aktualny
Bardziej szczegółowoSkł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ółowoInstytut 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ółowoSprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu):
Utwórz bazę danych Cw: CREATE DATABASE Cw Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu): DBCC USEROPTIONS Przykład z zapisem do tabeli tymczasowej: --Jeśli istnieje tabela tymczasowa
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 4. Co to jest kursor? Rodzaje kursorów
Plan wykładu Kursory: deklaracja, otwieranie, pobieranie danych, zamykanie Kursory: atrybuty Kursory: pętle, rekordy Kursory z parametrami BAZY DANYCH II WYKŁAD 4 dr inż. Agnieszka Bołtuć Co to jest kursor?
Bardziej szczegółowoITA-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ółowoComarch ERP XL Business Intelligence Start. Migracja do wersji 2018
Business Intelligence Start Copyright 2018 COMARCH Wszelkie prawa zastrzeżone Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie
Bardziej szczegółowoProgramowanie 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ółowoBAZY 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ółowoWyzwalacze (triggery) Przykład
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 związany
Bardziej szczegółowoObsługa błędów w SQL i transakcje. Obsługa błędów w SQL
Obsługa błędów w SQL i transakcje Zacznijmy od najprostszego przykładu: CREATE PROCEDURE podziel1 Obsługa błędów w SQL Powyższa procedura w większości przypadków zadziała prawidłowo, lecz na przykład poniższe
Bardziej szczegółowoWyzwalacz - 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ółowoSQL 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ółowow PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze
w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w
Bardziej szczegółowoTrigger 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ółowoMateriały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne
Materiały dostępne są na stronie: Materiały Technologie baz danych aragorn.pb.bialystok.pl/~gkret Wykład 5: Kursory jawne. Podprogramy. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka
Bardziej szczegółowoT-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ółowoKursory i wyjątki. (c) Instytut Informatyki Politechniki Poznańskiej 1
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Bardziej szczegółowoBazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.
Bardziej szczegółowoSzkolenie 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
Bardziej szczegółowoJęzyki programowania wysokiego poziomu. PHP cz.4. Bazy danych
Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł
Bardziej szczegółowoMicrosoft 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ółowoZmiany funkcjonalne i lista obsłużonych zgłoszeń Comarch DMS
Zmiany funkcjonalne i lista obsłużonych zgłoszeń 2017.1.2 1. Wstęp W niniejszym dokumencie zostały opisane modyfikacje wprowadzone w wersji oraz 2017.1.2. Uwaga! Od wersji 2017.1 Comarch ERP Obieg dokumentów
Bardziej szczegółowoE.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ółowoZarządzanie bazą danych. Bazy Danych i Systemy informacyjne Wykład 4. Piotr Syga
Bazy Danych i Systemy informacyjne Wykład 4 Piotr Syga 26.10.2018 Procedury review Przypomnienie składni procedur Tworzenie DELIMITER $$ CREATE PROCEDURE zliczacz (OUT wynik INT) BEGIN operacje... END
Bardziej szczegółowoSQL 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ółowoPodstawy 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
Bardziej szczegółowoDeklarowanie kursora
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Bardziej szczegółowoProcedury i funkcje składowane
Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe
Bardziej szczegółowoProgram 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ółowoWprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Bardziej szczegółowoWykład 6. SQL praca z tabelami 3
Wykład 6 SQL praca z tabelami 3 Łączenie wyników zapytań Język SQL zawiera mechanizmy pozwalające na łączenie wyników kilku pytań. Pozwalają na to instrukcje UNION, INTERSECT, EXCEPT o postaci: zapytanie1
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?
Bardziej szczegółowoĆ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ółowoStruktura bazy danych
Procedury składowane, funkcje i wyzwalacze Struktura bazy danych Tabela Oddziały ID Nazwa Adres 10 POZNAN Kwiatowa 3 20 WARSZAWA al. Jerozolimskie 22 30 KRAKOW Planty 14 40 WROCLAW Nad Odra 16 50 GDANSK
Bardziej szczegółowoPRZESTRZENNE 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ółowoPrzykładowa baza danych BIBLIOTEKA
Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych
Bardziej szczegółowoPrzykł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ółowona MS SQLServer 2005 i 2008
Wprowadzenie do programowania na MS SQLServer 2005 i 2008 Kalen Delaney, Inside MS SQL Server 2000, Wydawnictwo RM, 2001 Kalen Delaney, Inside MS SQL Server 2005, The storage engine, Microsoft Press, 2007
Bardziej szczegółowoLaboratorium 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ółowo1 Kursory 1. 2 Wyjątki Wyjątki predefiniowane Wyjątki niezdefiniowane wcześniej Definiowanie własnych wyjątków...
Plan wykładu Spis treści 1 Kursory 1 2 Wyjątki 4 2.1 Wyjątki predefiniowane............................. 4 2.2 Wyjątki niezdefiniowane wcześniej....................... 5 2.3 Definiowanie własnych wyjątków........................
Bardziej szczegółowoPrzestrzenne 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
Bardziej szczegółowoProcedury składowane i wyzwalacze
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
Bardziej szczegółowoBazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8
Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika
Bardziej szczegółowoĆ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ółowoCele. 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ółowoBazy danych. dr inż. Arkadiusz Mirakowski
Bazy danych dr inż. Arkadiusz Mirakowski Początek pracy z Transact SQL (T-SQL) 153.19.7.13,1401 jkowalski nr indeksu 2 Perspektywa - tabela tymczasowa - grupowanie Perspektywa (widok) Perspektywa (widok)
Bardziej szczegółowoSystemy 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
Bardziej szczegółowoProgramowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Bardziej szczegółowoĆwiczenie zapytań języka bazy danych PostgreSQL
Ćwiczenie zapytań języka bazy danych PostgreSQL 1. Uruchom link w przeglądarce: http://127.0.0.1/phppgadmin 2. Kliknij w zaznaczony na czerwono link PostgreSQL: 3. Zaloguj się wpisując hasło i login student.
Bardziej szczegółowoINTERNETOWE 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ółowoSQL Server. Odtwarzanie baz danych.
SQL Server. Odtwarzanie baz danych. Utwórz bazę danych CW. Utwórz w niej tabelę T1(p1 INT PRIMARY KEY, p2 INT) i wpisz wiersz (1,100). Sprawdź ścieżkę dostępu do plików bazy (np. we właściwościach bazy
Bardziej szczegółowoProgramowanie po stronie serwera w SZBD. Robert A. Kłopotek Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW
Programowanie po stronie serwera w SZBD Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Programowanie SZBD (DBMS) Procedury serwera Procedury składowane
Bardziej szczegółowoPlan wykładu PL/SQL. PL/SQL - historia TWORZENIE APLIKACJI BAZODANOWYCH
Plan wykładu 2 TWORZENIE APLIKACJI BAZODANOWYCH Wykład 2: Wprowadzenie do PL/SQL: bloki anonimowe, zmienne, kursory Wprowadzenie do PL/SQL Bloki Podstawowe składowe języka Zmienne i stałe Kursory Małgorzata
Bardziej szczegółowoORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład
ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko Typy rozproszonych baz Systemy typu klient-serwer (jeden serwer) Jednorodna rozproszona baza (kilka serwerow, jeden system zarzadzania baza ) Niejednorodna
Bardziej szczegółowoUżywany kiedy pełna treść instrukcji SQL jest nieznana przed uruchomieniem programu.
Plan wykładu Spis treści 1 Dynamiczny SQL 1 2 Wyzwalacze 2 3 Podsumowanie 9 4 Źródła 9 1 Dynamiczny SQL Dynamiczny SQL Dynamiczny SQL - technika programowania umożliwiająca generowanie instrukcji SQL dynamicznie
Bardziej szczegółowoWprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
Bardziej szczegółowo3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota
Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)
Bardziej szczegółowoWykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Bardziej szczegółowoPlan wykładu Projekt fizyczny bazy danych Wprowadzenie PL/SQL PL/SQL Cechy PL/SQL
Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Zmienne i stałe Instrukcje sterujące Wykorzystanie SQL w PL/SQL Kursory Wyjątki Projekt fizyczny bazy danych Braki projektu
Bardziej szczegółowoWyzwalacze. 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ółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium PHP + bazy danych Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, współpraca PHP z bazami
Bardziej szczegółowoJęzyk JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,
Bardziej szczegółowoPrzykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.
Marek Robak Wprowadzenie do języka SQL na przykładzie baz SQLite Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Tworzenie tabeli Pierwsza tabela W relacyjnych bazach danych jedna
Bardziej szczegółowoSystemowe 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ółowoJęzyk PL/SQL. Rozdział 2. Kursory
Język PL/SQL. Rozdział 2. Kursory Deklarowanie kursora, otwieranie kursora, pobieranie z kursora, zamykanie kursora, zmienne kursorowe, wyrażenie CURSOR, kursory niejawne. 1 Kursor jawny Każde zapytanie
Bardziej szczegółowoProcedury składowane. Funkcje vs. procedury Funkcja. Procedura. zazwyczaj ma parametry tylko typu IN; można wywoływać z poziomu
Procedury składowane Kolejnym typem programu języka PL/SQL są procedury składowane. Procedury mogą posiadać parametry typu IN, OUT lub IN OUT. Umożliwiają wykonanie operacji na danych w bazie, mogą też
Bardziej szczegółowoBazy danych dla producenta mebli tapicerowanych. Bartosz Janiak Marcin Sikora Wrocław 9.06.2015 r.
Bazy danych dla producenta mebli tapicerowanych Bartosz Janiak Marcin Sikora Wrocław 9.06.2015 r. Założenia Stworzyć system bazodanowy dla małej firmy produkującej meble tapicerowane. Projekt ma umożliwić
Bardziej szczegółowoBazy 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ółowoPHP: 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ółowoAdministracja 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ółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Bardziej szczegółowoJęzyk PL/SQL Procedury i funkcje składowane
Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone
Bardziej szczegółowoQUERY język zapytań do tworzenia raportów w AS/400
QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora
Bardziej szczegółowoKursor jawny. Rozdział 10a Kursory. Deklarowanie kursora (1) Deklarowanie kursora (2)
Kursor jawny Każde zapytanie SQL umieszczone w programie PL/SQL może zwrócić zero, jedną bądź wiele krotek. Aby efektywnie przetworzyć krotkizwrócone przez zapytanie korzystamy z kursorów. Kursor jest
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium PHP + bazy danych Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, współpraca PHP z bazami
Bardziej szczegółowoSQL (ang. Structured Query Language)
SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze
Bardziej szczegółowoJę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ółowoCheatsheet PL/SQL Andrzej Klusiewicz 1/9
Declare y integer; z varchar2(50); d date; null; Declare x integer:=10; null; x integer; x:=10; dbms_output.put_line('hello world'); for x in 1..10 loop Deklaracja 4 zmiennych. Jednej typu rzeczywistego,
Bardziej szczegółowo