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

Podobne dokumenty
Ć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 10 Generowanie plików HTML. Przygotuj program wyświetlający formatkę jak na rysunku (w fazie projektowania):

Ćwiczenie 6 Proste aplikacje - podstawowe komponenty.

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

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

Dostęp do baz danych w ASP.NET.

Oracle Application Express

5. Integracja stron aplikacji, tworzenie zintegrowanych formularzy i raportów

Autor: Joanna Karwowska

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

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

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

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

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

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

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

7. Formularze master-detail

Opracował: Tomasz Neumann Technologia dbexpress w środowisku DELPHI

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

Materiały do laboratorium MS ACCESS BASIC

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

Kraków, 22 października 2008

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

Wykład 05 Bazy danych

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

Wykład 5. SQL praca z tabelami 2

Bazy danych Ćwiczenie 1 Instrukcja strona 1 Wersja ogólna

Język SQL, zajęcia nr 1

Ćwiczenie zapytań języka bazy danych PostgreSQL

Budowa aplikacji z graficznym interfejsem użytkownika - GUI (Graphic User Interface)

Wstęp do relacyjnych baz danych. Jan Bartoszek

Ref. 7 - Język SQL - polecenia DDL i DML

SQL (ang. Structured Query Language)

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

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

koledzy, Jan, Nowak, ul. Niecała 8/23, , Wrocław, , ,

Imię i Nazwisko Data Ocena. Laboratorium 7

Podstawowe funkcje dodatku linq w C#

Instrukcja użytkownika systemu Komornik SQL-VAT

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

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

Kierunkowy Wybieralny Polski Semestr IV

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

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

Database Connectivity

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

15. Funkcje i procedury składowane PL/SQL

Oracle11g: Wprowadzenie do SQL

DECLARE VARIABLE zmienna1 typ danych; BEGIN

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

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

Programowanie w języku Java. Bazy danych SQLite w Javie

Bazy danych. Polecenia SQL

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

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

Zasady Programowania (Projektowanie) C++ - część 6 1/9 Programowanie Wizualno Obiektowe (3)

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

Wykład 8. SQL praca z tabelami 5

Comarch ERP XL Business Intelligence Start. Migracja do wersji 2018

Programowanie Wizualno Obiektowe - zajęcia 2 (PWO_BCPP_2_2) Tworzenie i kompilowanie projektów Programowanie Wizualno Obiektowe Zajęcia 2, część 2

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

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Projektowanie baz danych za pomocą narzędzi CASE

Bazy Danych i Usługi Sieciowe

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Zajęcia 13 wykorzystanie MySQL w PHP cz. 2

Współpraca PHP z MySql

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

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

PHP: bazy danych, SQL, AJAX i JSON

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

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

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

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

Protokół JDBC współpraca z relacyjnymi bazami danych lab4. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych

Ćwiczenie 5 Menu programu

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

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

Instrukcja obsługi modułu 7 Business Ship Control dla Comarch ERP Optima

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Microsoft.NET: Warstwa dostępu do danych (DAL) w aplikacjach ASP.NET Web Forms

Bazy danych i usługi sieciowe

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

Podejście obiektowe do relacyjnych baz danych Hibernate.

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

Bazy danych. dr Radosław Matusik. radmat

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

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

INSTRUKCJA OBSŁUGI DO PROGRAMU I-ANALITYK GT WERSJA i-sys Integracja Systemów Spółka z o.o. ul. Zwoleńska 127 lok. 32, Warszawa

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

Bazy danych w PHP dla początkujących

WHEN_NEW_FORM_INSTANCE

Projekt Hurtownia, realizacja skojarzeń dostawców i produktów

Transkrypt:

Wydział: Zarządzania i Modelowania Komputerowego Kierunek: Inżynieria Danych Przedmiot: Programowanie baz danych w środowisku RAD-C++ Rok 2 Semestr 4 Ćwiczenie 7 Komponent IBQuery - uruchamianie zapytań aktualizujących 1. Przygotować w nowym katalogu aplikację do aktualizacji bazy SKOKI.GDB. Formatka główna aplikacji powinna być zatytułowana "Aktualizacja bazy SKOKI" i powinna zawierać jeden komponent MainMenu w opcjami głównymi: Druzyny, Zawodnicy, Skoki. Komponenty konfiguracji bazy rozmieść na formatce DataModule. Z bazą danych połącz komponenty IBTable. Trzy komponenty dla trzech tabel. Umieść też jeden komponent IBQuery połączony z bazą, ale nieaktywny. 2. Przygotuj pierwszą opcję Druzyny przeznaczoną do wyświetlania i aktualizacji tabeli Drużyny. Dołącz formatkę Form3 zawierającą DBGrid związany (poprzez DataSource) z komponentem IBTable1, a następnie ustaw Active=true. Dopisz metodę wyświetlająca formatkę Form3 i przetestuj działanie aplikacji. 3. Na formatce Form3 rozmieść trzy przyciski dla dopisywania, zmiany oraz wstawiania nowych zapisów. Przyciski Dopisz i Zmień powinny wyświetlać formatkę z formularzem dopisywania lub zmiany zapisu, a przycisk Usuń przeznaczony jest dla usuwania zapisu. Zmiany zapisów powinny być organizowane przy pomocy zapytań INSERT INTO. UPDATE lub DELETE. Formatka Form4 wyświetlana przyciskiem Dopisz powinna mieć postać: Na formatce rozmieszczone są etykiety komponenty Edit oraz dwa przyciski. Przycisk Zatwierdź powinien uruchamiać metodę: void fastcall TForm4::Button1Click(TObject *Sender) String s; TLocateOptions Opts;

Opts.Clear(); if (Edit1->Text=="") ShowMessage("Wpisz identyfikator klubu!"); if (Edit2->Text=="") ShowMessage("Wpisz nazwę klubu"); Edit2->SetFocus(); s= "INSERT INTO Druzyny VALUES ('"+Edit1->Text+"', '"+Edit2->Text +"', '"+ Edit3->Text+"');"; if (DataModule2->IBTable1->Locate("ID_DRU", Edit1->Text, Opts) ) ShowMessage("Identyfikator Druzyny już istnieje!"); else DataModule2->IBQuery1->SQL->Text= s; DataModule2->IBQuery1->ExecSQL(); ShowMessage("Bląd bazy. Popraw dane!"); DataModule2->IBTable1->Refresh(); DataModule2->IBTable1->Locate("ID_DRU", Edit1->Text, Opts); Metoda przycisku Anuluj: void fastcall TForm4::Button2Click(TObject *Sender) Przycisk Usuń powinien inicjować metodę: void fastcall TForm3::Button3Click(TObject *Sender) TLocateOptions Opts; Opts.Clear(); DataModule2->IBTable2->Open(); if (DataModule2->IBTable2->Locate("ID_DRUZYNY", DataModule2->IBTable1->FieldByName("ID_DRU")->AsString, Opts) ) ShowMessage("Identyfikator Druzyny wystepuje w tabeli Zawodnicy!"); else DataModule2->IBQuery1->SQL->Text= "DELETE FROM Druzyny WHERE ID_DRU='"+ DataModule2->IBTable1->FieldByName("ID_DRU")->AsString+"';"; DataModule2->IBQuery1->ExecSQL();

DataModule2->IBTable1->Refresh(); Dopisz metodę Inicjowaną przyciskiem Zmień. W przypadku Zastosowania do zmiany zapisu nowej formatki formularza należy dołączyć formatkę Form5 o budowie podobnej do Form4, wyświetlić ją na przycisk Zmień oraz dołączyć obsługę zatwierdzania zmian. Propozycja wyświetlania: void fastcall TForm3::Button2Click(TObject *Sender) Form5->Edit1->Text= DataModule2->IBTable1->FieldByName("ID_DRU")->AsString; Form5->Edit2->Text= DataModule2->IBTable1->FieldByName("Nazwa")->AsString; Form5->Edit3->Text= DataModule2->IBTable1->FieldByName("Miasto")->AsString; Form5->Edit1->Enabled=false; Form5->ShowModal(); Propozycja metody zatwierdzania: void fastcall TForm5::Button1Click(TObject *Sender) String zapytanie; TBookmark pozycja; pozycja=datamodule2->ibtable1->bookmark; zapytanie= "UPDATE Druzyny SET nazwa='"+edit2->text+ "', Miasto='" +Edit3->Text+"' "+"WHERE ID_DRU='"+Edit1->Text+"';";; DataModule2->IBQuery1->SQL->Text= zapytanie; DataModule2->IBQuery1->ExecSQL(); ShowMessage("Błąd zapisu! Popraw dane!"); Edit2->SetFocus(); DataModule2->IBTable1->Refresh(); DataModule2->IBTable1->Bookmark=pozycja; Edit1->Enabled=true; Przetestuj gotowy program. 4. Samodzielnie opracuj wariant programu który do zmiany zapisu wykorzystuje formatkę Form4. 5. Przygotuj drugą opcję Tabele/ Zawodnicy przeznaczoną do aktualizacji tabeli Zawodnicy. Postępuj podobnie jak poprzednio. Wykorzystaj nową formatkę i do prezentacji tabeli Zawodnicy komponent IBTable2. Do wprowadzania zmian w tabeli wykorzystaj komponent IBQuery1.

Formatka wyświetlająca formularz dopisywania rekordu do tabeli Zawodnicy powinna zawierać 5 komponentów Edit dla wprowadzania pól tabeli, komponent DateTimePicker dla wprowadzania daty urodzenia i komponent ComboBox dla wyboru identyfikatora drużyny spośród dostępnych, a zapisanych w tabeli Drużyny. Propozycja postaci formatki przedstawiona jest poniżej: Formatka powinna być wyświetlana na przycisk Dopisz rozmieszczony na formatce prezentującej tabelę Zawodnicy. Propozycja tej metody poniżej: void fastcall TForm6::Button1Click(TObject *Sender) Form7->DateTimePicker1->Date=IncYear(Date(),-18); DataModule2->IBTable1->First(); Form7->ComboBox1->Clear(); Form7->ComboBox1->Text= DataModule2->IBTable1->FieldByName("ID_DRU")->AsString; while (!DataModule2->IBTable1->Eof) Form7->ComboBox1->Items-> Add(DataModule2->IBTable1->FieldByName("ID_DRU")->AsString); DataModule2->IBTable1->Next(); Form7->ShowModal(); Metoda przed wyświetlaniem formularza tabeli Zawodnicy ustala wartość początkową w komponencie DateTimePicker na datę poprzedzającą dzień obecny o 18 lat (potrzebne dołączenie modułu DateUtils.hpp) oraz wypełnia ComboBoxa danymi początkowymi pobranymi z tabeli Druzyny.

Propozycja metody zatwierdzania formularza i dopisywania rekordu w tabeli Zawodnicy, inicjowanej przyciskiem Dopisz na formatce formularza: void fastcall TForm7::Button1Click(TObject *Sender) String s; TLocateOptions Opts; Opts.Clear(); if (Edit1->Text=="") ShowMessage("Wpisz identyfikator zawodnika!"); if (Edit2->Text=="") ShowMessage("Wpisz nazwisko zawodnika"); Edit2->SetFocus(); StrToInt(Edit4->Text); ShowMessage("Pole Waga powinno być liczbą!"); Edit4->SetFocus(); StrToInt(Edit5->Text); ShowMessage("Pole Wzrost powinno być liczbą!"); Edit5->SetFocus(); s= "INSERT INTO Zawodnicy VALUES ('"+Edit1->Text+"', '"+Edit2->Text +"', '"+ Edit3->Text+"', "+ Edit4->Text+", "+ Edit5->Text +", '"+DateTimePicker1->Date+"', '" + ComboBox1->Text+ "');"; if (DataModule2->IBTable2->Locate("ID_Zaw", Edit1->Text, Opts) ) ShowMessage("Identyfikator Zawodnika już istnieje!"); else DataModule2->IBQuery1->SQL->Text= zapytanie; DataModule2->IBQuery1->ExecSQL(); ShowMessage("Bląd bazy. Popraw dane!"); DataModule2->IBTable2->Refresh();

DataModule2->IBTable2->Locate("ID_ZAW", Edit1->Text, Opts); Samodzielnie opracuj i dopisz pozostałe metody. 6. Przygotuj samodzielnie kolejną opcję Tabele/ Skoki przeznaczoną do aktualizacji tabeli Skoki.