Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos



Hasonló dokumentumok
Adatbázis kezelés Delphiben. SQL lekérdezések

Adatbázis-kezelés. Harmadik előadás

Adatbázis Rendszerek II. 8. Gyakorló környezet

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Adatbázis Rendszerek II. 2. Gyakorló környezet

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

Adatbázisok* tulajdonságai

B I T M A N B I v: T M A N

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Adatbázis használat I. 5. gyakorlat

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázis rendszerek SQL nyomkövetés

Java és web programozás

STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK

Adatbázis-kezelés, információs-rendszerek

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázisok I A relációs algebra

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

LBRA6i integrált rendszer

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Adatbázisok webalkalmazásokban

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Adatbázis-kezelés ODBC driverrel

Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL

SQL parancsok feldolgozása

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

munkafüzet open eseményéhez

Tranzakciókezelés PL/SQL-ben

Adatbázis-kezelés az Excel 2013-ban

Adatbázisok. 2. gyakorlat SQL november november 12. Adatbázisok 1 / 31

INFORMATIKA. PRÓBAÉRETTSÉGI május KÖZÉPSZINT. Pontozási és javítási útmutató

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

Java és web programozás

Adatbázis-kezelés Feladatok és megoldások

Adatbázis-kezelés ActiveX vezérl kkel 2.rész

SEGÉDLET ADATKEZELÉS MS EXCEL-BEN. Tároljuk az adatokat Excel munkalapon. Megjegyzés: A feladatokat MS Office Excel ban oldottuk meg.

INFORMATIKAI ALAPISMERETEK

Hozzunk létre két rekordot a táblában, majd véglegesítsünk (commit):

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

BEVEZETÉS Az objektum fogalma

Hozzunk ki többet abból amink van. Fehér Lajos

Adatbázis-kezelés ODBC-vel

Kalmár György Adatbázis alapú rendszerek

Adatbázisok elmélete 9. előadás

Access adatbázis elérése OLE DB-n keresztül

Elemi alkalmazások fejlesztése IV. Adatbázis-kezelés ActiveX vezérlıkkel - 1

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

Entity Framework alapú adatbáziselérés

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

Adatok szűrése, rendezése

Adatbázisok II. rész

LOGISZTIKAI ADATBÁZIS RENDSZEREK JOIN, AGGREGÁCIÓ

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE) október október 22. Adatbázisok 1 / 14

SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC

B IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v:

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN

Vizuális programozás gyakorlat

Féléves feladat. Vezetéknév Keresztnév

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.

A könyv tartalomjegyzéke

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális)

Adatbázis-kezelés API hívásokkal. Adatbázis-kezelés ODBC-vel. Adatbázis-kezelés SQL parancsokkal. Adatbázis-kezelés ODBC-vel.

Adatbázis-kezelés Feladatok és megoldások

Kézikönyv. Fizetési feltétel kulcs felvitele

Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül

Adatbázisok elmélete 9. előadás

Adatbázisban tárolt kollekciók

Egyszerű példaprogramok gyakorláshoz

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

LEKÉRDEZÉSEK SQL-BEN. A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek

Adatbázis kezelő alkalmazás

PL/SQL (folytatás) Kurzorok, függvények, eljárások

Jegyz könyv. Adatbázis-rendszerek II. Beadandó feladat. Miskolci Egyetem

Delphi programozás IV.

INFORMATIKAI ALAPISMERETEK

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Marosvásárhely. ABR ( Adatbázisrendszerek) 12. Előadás:

Adatbázisok elleni fenyegetések rendszerezése. Fleiner Rita BMF/NIK Robothadviselés 2009

Átírás:

PASzSz

Kilencedik témakör: Lazarus-Firebird Készítette: Dr. Kotsis Domokos

Az SQLdb fülön IBConnection

Kapcsolat A Data Access fülön Az SQLdb fülön...

Select 1. Az SQLQuery lezárása. (Active := false, Close) 2. Az SQLQuery SQL tulajdonságánal törlése. (Clear) 3. Az SQLQuery SQL tulajdonságánal feltöltése. (Editor, Add( )) 4. Az SQLQuery SQL megnyitása. (Active := true, Open)...

SQL parancs azsqlquery-ben

Data Controls I.: TDBGrid Egy lekérdezésnél az SQLQuery megnyitása után (Active True) tervezési időben is látható az eredmény.

Lekérdezés futás közben SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add(ide jön az SQL utasítás string-ként); SQLQuery1.Open; Edit1.Text:= SQLQuery1.fieldbyname('szerzo').asstring;

Lekérdezés futás közben Készítsünk lekérdezést a egy bizonyos ár alatti könyvekről. Készítsünk lekérdezést a egy bizonyos szerző könyveiről.

Lekérdezés futás közben SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Select szerzo From konyvek Where ar > 1500'); SQLQuery1.Open; SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('select cim from konyvek where szerzo =''Arany János'''); SQLQuery1.Open;

Aggregát függvények SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Select count(*) from konyvek '); SQLQuery1.Open; Edit1.Text := IntToStr(SQLQuery1.FieldByName('COUNT').asinteger); Mezőnév az aggregát függvény neve

Feladat Egy Edit ablakban jelenjen meg az átlagosnál drágább könyvek száma.

Többszörös select SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Select count(*) from konyvek '); SQLQuery1.SQL.add('where ar > (select avg(ar) from konyvek) '); SQLQuery1.Open; Edit1.Text := IntToStr(SQLQuery1.FieldByName('COUNT').asinteger);

TDBGRID II. TDBGrid (táblázat megjelenítésére). Jobb egérgomb:

Data Controls II. TDBNavigator (léptet az eredmény táblán belül) Datasource (kitöltendő) VisibleButtons (milyen gombok legyenek rajta) TDBText (mint a label) Datasource (kitöltendő) TDBEdit (mint az edit) Datasource (kitöltendő)

Paraméterek használata A Where klauzulában használhatók, :-vel kell kezdődjenek. A megnyitás előtt értéket kell adni a params[i] tömb megfelelő számú elemének. A paraméter neve közömbös, a sorrend számít 0-tól kezdve.

Feladat Egy Edit ablakban jelenítse meg, egy másik Edit ablakban megadott című könyv szerzőjét.

Paraméterek használata SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Select szerzo from Konyvek where cim = :p0'); SQLQuery1.Params[0].AsString := Edit1.Text; SQLQuery1.Open; Edit2.Text:= SQLQuery1.FieldByName('szerzo').asstring;

Feladat Egy Edit megadjuk egy név kezdetét. Egy Dbgridben jelenítse meg az ezekkel a karakterekkel kezdődő nevű szerzőket.

Keresés szó elejére SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Select * from konyvek where szerzo LIKE :p0'); SQLQuery1.SQL.add(' order by szerzo'); SQLQuery1.Params[0].AsString := Edit2.Text+'%'; SQLQuery1.Open;

DML 1. Az SQLQuery lezárása. (Active := false, Close) 2. Az SQLQuery SQL tulajdonságánal törlése. (Clear) 3. Az SQLQuery SQL tulajdonságánal feltöltése. (Add( )) 4. Az parancs végrehajtása. (ExecSQL)

Feladat Vigyen fel egy új rekordot a konyvek táblába: Madách Imre : Az ember tragédiája, ára 3500 Ft. Ellenőrizze, hogy a felvitel sikeres volt-e!

Felvitel SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('Insert Into KONYVEK'); SQLQuery1.SQL.add('(szerzo, cim, ar)'); SQLQuery1.SQL.add(' values ( :pszerzo, :pcim, :par)'); SQLQuery1.Params[0].AsString := 'Madách Imre'; SQLQuery1.Params[1].AsString := 'Az ember tragédiája'; SQLQuery1.Params[2].AsInteger := 3500; Try If (MessageDlg('Felvigyem?',mtConfirmation,[mBOK,mBNo],0) = mrok)) then Begin SQLQuery1.ExecSQL; SQLTransaction1.Commit; MessageDlg('A felvitel kész',mtinformation,[mbok],0); end else Begin MessageDlg('A felvitel megszakítva',mterror,[mbok],0); end; except SQLTransaction1.RollBack; MessageDlg('A felvitel sikertelen',mterror,[mbok],0); End;

Feladat Módosítsa Madách Imre művének címét Mózes-re. Ellenőrizze, hogy a módosítás sikeres volt-e!

Módosítás SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('update konyvek set '); SQLQuery1.SQL.add('cim =:pcim '); SQLQuery1.SQL.add('where szerzo = :psz'); SQLQuery1.Params[0].AsString := 'Mózes'; SQLQuery1.Params[1].AsString := 'Madách Imre'; Try If (MessageDlg('Módosítsak?',mtConfirmation,[mBOK,mBNo],0) = mrok) then Begin SQLQuery1.ExecSQL; SQLTransaction1.Commit; MessageDlg('A módosítás kész',mtinformation,[mbok],0); end else Begin MessageDlg('A módosítás megszakítva',mterror,[mbok],0); end; except SQLTransaction1.RollBack; MessageDlg('A módósítás sikertelen',mterror,[mbok],0); End;

Feladat Törölje Madách Imre műveit. Ellenőrizze, hogy a törlés sikeres volt-e!

Törlés SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('delete from konyvek '); SQLQuery1.SQL.add('where szerzo = :psz'); SQLQuery1.Params[0].AsString := 'Madách Imre'; Try If (MessageDlg('Töröljem?',mtConfirmation,[mBOK,mBNo],0) = mrok) then Begin SQLQuery1.ExecSQL; SQLTransaction1.Commit; MessageDlg('A törlés kész',mtinformation,[mbok],0); end else Begin MessageDlg('A törlés megszakítva',mterror,[mbok],0); end; except SQLTransaction1.RollBack; MessageDlg('A törlés sikertelen',mterror,[mbok],0); End;

DDL 1. Az SQLQuery lezárása. (Active := false, Close) 2. Az SQLQuery SQL tulajdonságánal törlése. (Clear) 3. Az SQLQuery SQL tulajdonságánal feltöltése. (Add( )) 4. Az parancs végrehajtása. (ExecSQL)

Feladat Készítsen gombnyomásra egy új táblát, melynek neve table2, mezői egyes és kettes, integer, 20 karakteres varchar típussal. Ellenőrizze, hogy sikeres volt-e!

Új tábla SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('CREATE TABLE TABLE2 '); SQLQuery1.SQL.add(' (EGYES SMALLINT, KETTES VARCHAR(20))'); Try If (MessageDlg('Csináljam?',mtConfirmation,[mBOK,mBNo],0) = mrok) then Begin SQLQuery1.ExecSQL; SQLTransaction1.Commit; MessageDlg('Kész',mtInformation,[mBOK],0); end else Begin MessageDlg('Megszakítva',mtError,[mBOK],0); end; except SQLTransaction1.RollBack; MessageDlg('Sikertelen',mtError,[mBOK],0); End;

DCL 1. Az SQLQuery lezárása. (Active := false, Close) 2. Az SQLQuery SQL tulajdonságánal törlése. (Clear) 3. Az SQLQuery SQL tulajdonságánal feltöltése. (Add( )) 4. Az parancs végrehajtása. (ExecSQL)

Feladat Adjon lekérdezési jogot a könyvek táblához a Pisti nevű felhasználónak. (A felhasználót vigye fel a utility programmal!)

Grant SQLQuery1.SQL.add('grant select on table konyvek to Pisti ');

Grant eredménye

Tárolt eljárás SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('create procedure proproc (a integer) returns( res integer)'); SQLQuery1.SQL.add(' as begin'); SQLQuery1.SQL.add('if (a = 0) then res = 1; else res = 0;'); SQLQuery1.SQL.add('suspend;'); SQLQuery1.SQL.add('end'); Try SQLQuery1.ExecSQL SQLTransaction1.Commit; except SQLTransaction1.RollBack; End;

Tárolt eljárás hívása SQLQuery1.Close; SQLQuery1.SQL.Clear; SQLQuery1.SQL.add('select res from proproc(0) '); SQLQuery1.Open; Edit1.Text := IntToStr(SQLQuery1.fieldbyname('res').asinteger);