Kierunek: ETI Przedmiot: Programowanie w środowisku RAD - Delphi Rok III Semestr 5

Podobne dokumenty
Ćwiczenie 7 Komponent IBQuery - uruchamianie zapytań aktualizujących. 1. Przygotować w nowym katalogu aplikację do aktualizacji bazy SKOKI.GDB.

Ćwiczenie 4 Aktualizacja tabel. 1. Skopiuj aplikację przygotowaną na poprzednich zajęciach w katalogu SKOKI1 do nowego katalogu SKOKI2.

Kierunek: ETI Przedmiot: Programowanie w środowisku RAD - Delphi Rok III Semestr 5. Ćwiczenie 5 Aplikacja wielo-okienkowa

W kodzie modułu Unit1 zdefiniuj dwie metody - składowe komponentu formatki TForm1:

Skopiuj plik do katalogu macierzystego serwera Apache (C:/xampp/htdocs). Uruchom przeglądarkę i wpisz w polu adresowym następujący ciąg:

Opracował: Tomasz Neumann Technologia dbexpress w środowisku DELPHI

Wydział: ZiMK Przedmiot: Programowanie - Delphi Semestr 5

Oracle Application Express

Laboratorium 15: Bazy Danych Tworzenie bazy danych i programowanie elementów nawigacyjnych aplikacji stworzonej przy pomocy technologii dbexpress

Wprowadzenie do systemu Delphi

Programowanie modułowe

Ćwiczenie 1 Proste aplikacje - podstawowe komponenty.

SQL 4 Structured Query Lenguage

Podstawy programowania obiektowego

Nazwa implementacji: Kółko i krzyżyk w Lazarusie. Autor: Piotr Fiorek Andrzej Stefaniuk

Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact

Ćwiczenie 10 Generowanie plików HTML. Przygotuj program wyświetlający formatkę jak na rysunku (w fazie projektowania):

Niniejszy ebook jest własnością prywatną.

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.

WHEN_NEW_FORM_INSTANCE

Tak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS

Delphi 7 + Indy 10 Przykłady prostych aplikacji sieciowych

PROGRAM: WYSZUKANIE LICZBY MAKSYMALNEJ

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

Zmiany funkcjonalne i lista obsłużonych zgłoszeń Comarch DMS , Comarch DMS i Comarch DMS

Imię i Nazwisko Data Ocena. Laboratorium 7

Delphi podstawy programowania. Pliki INI

DECLARE VARIABLE zmienna1 typ danych; BEGIN

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

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

16) Wprowadzenie do raportowania Rave

Dostęp do baz danych w ASP.NET.

Wprowadzenie do języka Pascal

Programowanie w SQL. definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE,

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej.

kierunkowy (podstawowy / kierunkowy / inny HES) nieobowiązkowy (obowiązkowy / nieobowiązkowy) polski semestr V zimowy i letni (semestr zimowy / letni)

Delphi Laboratorium 3

Hurtownia Świętego Mikołaja projekt bazy danych

Instrukcja warunkowa i wyboru

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

Język SQL w Delphi. 1. Kwerendy Przygotowanie do ćwiczenia Komenda SELECT

SYSTEM EWIDENCJI STUDENTÓW WSPOMAGAJĄCY PRACĘ DZIEKANATU BAZUJĄCY NA ŚRODOWISKU DELPHI I SQL

1.1. System otwartych baz danych ODBC. System otwartych baz danych ODBC. Interfejs ODBC. Interfejs ODBC. System otwartych baz danych ODBC

Comarch ERP XL Business Intelligence Start. Migracja do wersji 2018

Przedmiot: Programowanie usług internetowych - Delphi Przygotował: K. Strzałkowski Rok V. Semestr IX. Wydział ZiMK

Bazy Danych i Usługi Sieciowe

W dowolnej przeglądarce internetowej należy wpisać poniższy adres:

SQL (ang. Structured Query Language)

Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle

Programowanie w MS Visual Studio 2005 z wykorzystaniem MS SQL Server 2005

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

Materiały do laboratorium MS ACCESS BASIC

Program powinien otworzyć się z pierwszym formularzem. Jeśli nie, otwórz pierwszy formularz, wybierając go z listy - Shift+F12.

Kraków, 22 października 2008

Bazy danych dla producenta mebli tapicerowanych. Bartosz Janiak Marcin Sikora Wrocław r.

8. Listy wartości, dodatkowe informacje dotyczące elementów i przycisków

Język DML. Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE

Obiektowe bazy danych Ćwiczenia laboratoryjne (?)

Bazy danych i usługi sieciowe

ĆWICZENIE Uruchomić Oracle Forms Builder. 2. Utworzyć nowy formularz (File->New->Form) 3. Nawiązać połączenie z bazą danych (file-connect).

Obiektowe bazy danych

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

Obowiązuje od wersji

Wykład 05 Bazy danych

Język SQL, zajęcia nr 1

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

ZASADY PROGRAMOWANIA semestr zimowy 2003/2004 Zajecia: 11 Zajecia z Delphi: 4

Obsługa grafiki w Delphi, rysowanie na płótnie, obsługa myszki, zapisywanie obrazków do plików, bitmapy pozaekranowe.

Laboratorium 050. Crystal Reports. Ćwiczenie 1. Otwarte pozycje

Współpraca PHP z MySql

Autor: Joanna Karwowska

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

KROK 17 i 18. Cel: Tworzymy oddzielne okno - O autorze. 1. Otwórz swój program. 2. Skompiluj i sprawdź, czy działa prawidłowo.

BAZY DANYCH Panel sterujący

5. Bazy danych Base Okno bazy danych

Delphi. Lazarus. Kompilatory Delphi. Linki do stron o Delphi

Semestr zimowy Podstawy Informatyki, Logika TAK

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

Plan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych

Darmowa publikacja dostarczona przez Złote Myśli

Aplikacje WWW - laboratorium

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

Rozpocznijmy ten odcinek od rozwiązania problemu postawionego w poprzednim odcinku:

Wykład 5. SQL praca z tabelami 2

1. Połączenie z bazą danych. W wybranym edytorze tworzymy plik sqltest.py i umieszczamy w nim poniższy kod. #!/usr/bin/python3 import sqlite3

Bazy danych. Polecenia SQL

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

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

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

wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek

IIIIIIIIIIIIIIIMMIMMIII

PODSTAWY BAZ DANYCH 13. PL/SQL

USTAWIENIA UŻYTKOWNIKA

Ćwiczenie 6 Proste aplikacje - podstawowe komponenty.

Zaawansowane aplikacje internetowe

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Ćwiczenie zapytań języka bazy danych PostgreSQL

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Transkrypt:

Kierunek: ETI Przedmiot: Programowanie w środowisku RAD - Delphi Rok III Semestr 5 Ćwiczenie 11 Aktualizacja bazy cd. Uzupełnij aplikację przygotowaną na ćwiczeniach poprzednich. Dodaj obsługę opcji Aktualizacja/Tabela Zawodnicy. Opcja Aktualizacja/Tabela Zawodnicy powinna powodować wyświetlenie formatki organizującej czynności aktualizacji tabeli ZAWODNICY tj. dopisywanie nowych wierszy tabeli, zmiany zawartości wierszy juŝ zapisanych oraz usuwania wierszy niepotrzebnych. Realizacja funkcji: Do realizacji zapytań aktualizujących wykorzystany będzie ten sam komponent IBQuery (oraz związany z nim DataSource) który uprzednio był wykorzystywany do aktualizacji tabeli DRUZYNY. Dodaj nową formatkę (Form9) i umieść na niej komponenty zapewniające docelowy wygląd formatki jak na rysunku poniŝej: Komponent IBQuery naleŝy powiązać ze źródłem danych zapewniającym dostęp do tabeli ZAWODNICY. Rozmieszczone na formatce przyciski Dodaj i Zmień będą wyświetlać kolejną formatkę zawierającą formularz dla wprowadzania wartości pól dodawanego/zmienianego wiersza tabeli. Dołącz nową formatkę (Form10) zawierająca formularz. Na rysunku poniŝej przedstawiono wygląd formatki wyświetlonej w fazie wykonania programu przy pomocy przycisku Zmien.

Formatka zawiera 8 etykiet, 5 pól Edit, komponent DateTimePicker, komponent ComboBox oraz przycisk. Jak widać na rysunku, komponent DateTimePicker wykorzystywany jest do ustalania wartości typu Data dla pola Data_ur. Wartość pola Id_Druzyny jest ustalana poprzez wybór z wartości umieszczonych na liście podpowiedzi komponentu ComboBox. Wymieniona lista wartości (właściwość Items) jest ustalana na podstawie tabeli DRUZYNY w taki sposób Ŝeby elementy listy zawierały obok identyfikatora takŝe nazwę druŝyny. Po wyborze wartości do tabeli powinien być wpisywany jedynie identyfikator wycięty z całego zapisu. Dołącz do kodu modułów Unit9 i Unit10 metody obsługi zdarzeń OnClick dla dwu przycisków rozmieszczonych na formatce Form9 oraz jednego z formatki Form10. Proponowany zapis metod dla przycisków Dodaj i Zmien: procedure TForm9.Button1Click(Sender: TObject); with Form10 do Label1.Caption:='Dodawanie nowego zapisu'; Edit1.Enabled:=true; Edit1.Text:=''; Edit2.Text:=''; Edit3.Text:=''; Edit4.Text:=''; Edit5.Text:=''; DateTimePicker1.Date:=IncYear(Date,-18); with DataModule2.IBTable1 do ComboBox1.Items.Clear; First; ComboBox1.Text:=Fields[0].AsString+' '+Fields[1].AsString; while not eof do ComboBox1.Items.Add(Fields[0].AsString+' '+Fields[1].AsString); Next;

ShowModal; procedure TForm9.Button2Click(Sender: TObject); with Form10 do Label1.Caption:='Poprawianie zapisu'; Edit1.Text:=Fields[0].AsString; Edit2.Text:=Fields[1].AsString; Edit3.Text:=Fields[2].AsString; Edit4.Text:=Fields[3].AsString; Edit5.Text:=Fields[4].AsString; DateTimePicker1.Date:=Fields[5].AsDateTime; ComboBox1.Text:=Fields[6].AsString; Edit1.Enabled:=false; with DataModule2.IBTable1 do ComboBox1.Items.Clear; First; while not eof do ComboBox1.Items.Add(Fields[0].AsString+' '+Fields[1].AsString); if Fields[0].AsString = ComboBox1.Text then ComboBox1.Text:=ComboBox1.Text+' '+Fields[1].AsString; Next; ShowModal; Jak widać z powyŝszego zapisu obie metody wyświetlają tę samą odpowiednio przygotowaną formatkę. Proponowany zapis dla przycisku Zatwierdz na formatce Form10: procedure TForm10.Button1Click(Sender: TObject); var p: string; if Edit1.Enabled then if Edit1.Text='' then ShowMessage('Pole Id_Zawodnika musi byc wypelnione'); Edit1.SetFocus; if Locate('ID_ZAW',Edit1.Text,[]) then ShowMessage('Id Zawodnika musi miec wartosc unikalną'); Edit1.SetFocus;

if ComboBox1.Text='' then ShowMessage('Pole Id_Druzyny musi byc wypelnione'); ComboBox1.SetFocus; if Edit2.Text='' then ShowMessage('Pole Nazwisko musi byc wypelnione'); Edit2.SetFocus; try StrToInt(Edit4.Text) except ShowMessage('Pole Wzrost musi byc liczba'); Edit4.SetFocus; if StrToInt(Edit4.Text) <=0 then ShowMessage('Pole Wzrost musi byc dodatnie'); Edit4.SetFocus; try StrToInt(Edit5.Text) except ShowMessage('Pole Waga musi byc liczba'); Edit5.SetFocus; if StrToInt(Edit5.Text) <=0 then ShowMessage('Pole Waga musi byc dodatnie'); Edit5.SetFocus; if Edit1.Enabled then p:='insert INTO ZAWODNICY VALUES ('''+ edit1.text+ ''','''+ edit2.text+''',''' +edit3.text+''','+edit4.text+','+edit5.text+ ',''' +DateToStr(DateTimePicker1.Date)+''','''+ Copy(ComboBox1.Text, 1, 4) + ''');'; SQL.Text:= p; end else SQL.Text:='UPDATE ZAWODNICY SET NAZWISKO='''+edit2.Text+

''', IMIE=''' +edit3.text+''', WZROST='+edit4.Text+ ', WAGA='+edit5.Text+', DATA_UR=''' +DateToStr(DateTimePicker1.Date)+ ''', ID_DRUZYNY=''' +Copy(ComboBox1.Text, 1, 4)+''' WHERE ID_ZAW=''' +edit1.text+ ''';'; close; open; Locate('ID_ZAW',Edit1.Text,[]); close; Jak widać z powyŝszego zapisu metoda przycisku Zatwierdź powoduje sprawdzenie poprawności wpisanych danych, a następnie dokonuje wpisania do tabeli ZAWODNICY nowego zapisu (z wykorzystaniem zapytania INSERT INTO) lub zmianę zapisu (z wykorzystaniem zapytania UPDATE). Przetestuj działanie przycisków. Dołącz do kodu modułu Unit9 metodę obsługi dla przycisku Usun. Proponowany zapis: procedure TForm9.Button3Click(Sender: TObject); SQL.Text:= 'DELETE FROM ZAWODNICY WHERE ID_ZAW ='''+ DataModule2.IBTable2.Fields[0].AsString+''';'; DataModule2.IBTable2. DataModule2.IBTable2.Open; Przetestuj działanie aplikacji..