Java és web programozás

Hasonló dokumentumok
Java és web programozás

Adattípusok. Max. 2GByte

Adatbázis rendszerek SQL nyomkövetés

Adattípusok. Max. 2GByte

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

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.

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

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

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

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

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

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

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

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

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

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 használat I. 5. gyakorlat

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

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

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

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

Adatbázisok* tulajdonságai

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

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

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

BEVEZETÉS Az objektum fogalma

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-lekérdezés. Az SQL nyelv. Makány György

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

Webfejlesztés 4. alkalom

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

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

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

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok

LBRA6i integrált rendszer

Bevezetés: az SQL-be

ADATBÁZIS RENDSZEREK I BEADANDÓ

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

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

Készítette: Szabóné Nacsa Rozália

Az SQL adatbázisnyelv: DML

Adatbázis használat I. 2. gyakorlat

Adatbázisok biztonsága

Adatbázis tartalmának módosítása

A könyv tartalomjegyzéke

Vizuális programozás gyakorlat

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

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

SQL DDL-1: táblák és megszorítások

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:

Az SQL nyelv. SQL (Structured Query Language = Strukturált Lekérdező Nyelv).

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.

Miután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni:

Relációsémák létrehozása SQL nyelvben

STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK

SQL DDL-2 (aktív elemek) triggerek

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2

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

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

SQL parancsok feldolgozása

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

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

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

Blahota István. SQLite alapok

Szálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában?

Elemi alkalmazások fejlesztése IV.

SQL gyakorló feladatok. 6. Adatbázis gyakorlat április 5.

Adatok szűrése, rendezése

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

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

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

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

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Tartalomjegyzék 2. RENDSZER FELÉPÍTÉSE... 3

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK)

Minta felvételi feladatsor programozásból

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

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

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

Adatbázis használat I. 2. gyakorlat

Extrémen brutál, gyors talpaló PHP nyelvhez (database). v2.1

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )

LOGISZTIKAI ADATBÁZIS RENDSZEREK UNIÓ, ALLEKÉRDEZÉSEK

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


Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

GEIAL Kovács László. GEIAL Kovács László GEIAL Kovács László

MySQL. Elektronikus jegyzet Széchenyi István Egyetem Távközlési tanszék

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

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

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

INFORMATIKAI ALAPISMERETEK

Spatial a gyakorlatban

Indexek és SQL hangolás

JAVA SE/ME tanfolyam tematika

Átírás:

Budapesti Műszaki Egyetem 2015. 04. 08.

10. Előadás

Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez:

Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: addkeylistener(keylistener kl): hozzáadja a paraméterként kapott KeyListener-t (tehát példányosítani kell a megírt KeyListener-ünket) addmouselistener(mouselistener ml): hozzáadja a paraméterként kapott MouseListener-t addmousemotionlistener(mousemotionlistener mml): a MouseMotionListener nem csak a kattintásokat, hanem az egér folyamatos mozgását figyeli, így kattintás nélkül kapunk belõle egér pozíció eseményeket

Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: addkeylistener(keylistener kl): hozzáadja a paraméterként kapott KeyListener-t (tehát példányosítani kell a megírt KeyListener-ünket) addmouselistener(mouselistener ml): hozzáadja a paraméterként kapott MouseListener-t addmousemotionlistener(mousemotionlistener mml): a MouseMotionListener nem csak a kattintásokat, hanem az egér folyamatos mozgását figyeli, így kattintás nélkül kapunk belõle egér pozíció eseményeket Ezeket mind a JFrame vagy JPanel konstruktorában kell meghívni tehát valójában amit futtatni fogtok az a this.addmouselistener(...), de a this-t nem szükséges kiírni.

Ami kimearad múlthéten Pl public class Game extends JFrame {... public GameBoard gameboard; public Game() { gameboard = new GameBoard(); } }... add(gameboard); addmouselistener(new MouseController(this)); settitle("sudoku");... A MouseController konstruktora egy GameBoard objektumot kap.

SQLite SQLite: Adatbázis kezelő rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngészőkben is használt Nehéz olyan programnyelvet találni aminek ne lenne valamilyen SQLite kezelő könyvtára A forrása már hozzáférhető

SQLite SQLite: sqlite3 Adatbázis kezelő rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngészőkben is használt Nehéz olyan programnyelvet találni aminek ne lenne valamilyen SQLite kezelő könyvtára A forrása már hozzáférhető Frontend az SQLite-hoz Egyszerű használni, beszédes a kód

sqlite3 Nagy vonalakban az SQLite-ot úgy képzelhetjük el, mint egy Excel-t grafikus felület nélkül, táblázataink vannak, megnevezett oszlopokkal. Adatokat rakhatunk beléjük, törölhetünk adatokat, kiolvashatunk stb.

sqlite3 Nagy vonalakban az SQLite-ot úgy képzelhetjük el, mint egy Excel-t grafikus felület nélkül, táblázataink vannak, megnevezett oszlopokkal. Adatokat rakhatunk beléjük, törölhetünk adatokat, kiolvashatunk stb. Terminálból az "sqlite3" paranccsal nyithatjuk meg az sqlite3-at, adhatunk neki rögtön egy adatbázis file-t, amin dolgozunk. Ha ez már létezik akkor azt használja, ha még nem, akkor létrehozza.

sqlite3 Nagy vonalakban az SQLite-ot úgy képzelhetjük el, mint egy Excel-t grafikus felület nélkül, táblázataink vannak, megnevezett oszlopokkal. Adatokat rakhatunk beléjük, törölhetünk adatokat, kiolvashatunk stb. Terminálból az "sqlite3" paranccsal nyithatjuk meg az sqlite3-at, adhatunk neki rögtön egy adatbázis file-t, amin dolgozunk. Ha ez már létezik akkor azt használja, ha még nem, akkor létrehozza. Pl: $ sqlite3 adatbazis.db

sqlite3 Nagy vonalakban az SQLite-ot úgy képzelhetjük el, mint egy Excel-t grafikus felület nélkül, táblázataink vannak, megnevezett oszlopokkal. Adatokat rakhatunk beléjük, törölhetünk adatokat, kiolvashatunk stb. Terminálból az "sqlite3" paranccsal nyithatjuk meg az sqlite3-at, adhatunk neki rögtön egy adatbázis file-t, amin dolgozunk. Ha ez már létezik akkor azt használja, ha még nem, akkor létrehozza. Pl: $ sqlite3 adatbazis.db Mostantól sqlite3-ban vagyunk.

Meta parancsok Hasznos meta parancsok:.tables kiadja az aktuális adatbázisban található táblázatok nevét.mode column szépen oszlopokba adja ki a keresett adatokat.headers on az oszlopok nevét kiírja a keresett adatok felé.show megmutatja milyen opciókat állítottunk be.schema megadja egy táblázat struktúráját, hogyan hoztuk létre.dump kiadja a parancsokat, amikkel újra tudjuk építeni az adott táblázatot.help ha elvesznétek

Táblázatok CREATE TABLE nev(...); paranccsal hozhatunk létre egy táblázatot, a... helyére az oszlopaink nevét és a bennük tárolt adatok típusát kell megadni. A lehetséges tipusok:

Táblázatok CREATE TABLE nev(...); paranccsal hozhatunk létre egy táblázatot, a... helyére az oszlopaink nevét és a bennük tárolt adatok típusát kell megadni. A lehetséges tipusok: NULL null érték INTEGER előjeles egész REAL előjeles lebegőpontos TEXT string vannak még mások is, pl. dátum típus is van

Táblázatok CREATE TABLE nev(...); paranccsal hozhatunk létre egy táblázatot, a... helyére az oszlopaink nevét és a bennük tárolt adatok típusát kell megadni. A lehetséges tipusok: NULL null érték INTEGER előjeles egész REAL előjeles lebegőpontos TEXT string vannak még mások is, pl. dátum típus is van Pl: CREATE TABLE Neptun(id integer, NeptunKod text, Nev text, Atlag real);

Táblázatok CREATE TABLE nev(...); paranccsal hozhatunk létre egy táblázatot, a... helyére az oszlopaink nevét és a bennük tárolt adatok típusát kell megadni. A lehetséges tipusok: NULL null érték INTEGER előjeles egész REAL előjeles lebegőpontos TEXT string vannak még mások is, pl. dátum típus is van Pl: CREATE TABLE Neptun(id integer, NeptunKod text, Nev text, Atlag real); DROP TABLE nev; táblazat törlése ALTER TABLE tablazat1 RENAME TO tablazat2; táblázat átnevezése Az ALTER TABLE tablazat1 ADD COLUMN Email text; táblázatba új oszlop felvétele

Szintaxis Amiket eddig észrevehettünk a szintaxissal kapcsolatban: a parancsok végere ; (pontosvesszőt) kell raknunk a kis és nagybetű változónevektől eltekintve nem számít, tehát a create table... ugyanazt eredményezi mint a CREATE TABLE... egy parancson belül a változókat / oszlopokat, (vesszővel) választjuk el sortörések nem számítanak a parancsok ismerete nélkül is szinte olvasható

Insert Az INSERT paranccsal írhatunk új sorokat a táblázatunkba, a szintaxis a következő (feltéve hogy a TablazatNeve táblázatunk 3 oszlopos): INSERT INTO TablazatNeve(oszlop1, oszlop2, oszlop3) VALUES(ertek1, ertek2, ertek3); INSERT INTO TablazatNeve(oszlop1, oszlop3) VALUES(ertek1, ertek3); INSERT INTO TablazatNeve VALUES(ertek1, ertek2, ertek3);

Insert Az INSERT paranccsal írhatunk új sorokat a táblázatunkba, a szintaxis a következő (feltéve hogy a TablazatNeve táblázatunk 3 oszlopos): INSERT INTO TablazatNeve(oszlop1, oszlop2, oszlop3) VALUES(ertek1, ertek2, ertek3); INSERT INTO TablazatNeve(oszlop1, oszlop3) VALUES(ertek1, ertek3); INSERT INTO TablazatNeve VALUES(ertek1, ertek2, ertek3); PL: INSERT INTO Neptun(id, NeptunKod, Nev) VALUES(23, C3WRGQ, Kovacs Kristof );

Delete Sort törölni a DELETE paranccsal tudunk: DELETE FROM TablazatNeve; kitörli az összes sorát a táblázatnak DELETE FROM TablazatNeve WHERE oszlop1 = valamiertek; kitörli azt a sorát a táblázatnak aminek az oszlop1-e valamiertek DELETE FROM TablazatNeve WHERE oszlop2 like valamiresz; azokat a sorokat törli ki aminek az oszlop2 oszlopában olyan adat van amiben szerepel a valamiresz

Delete Sort törölni a DELETE paranccsal tudunk: DELETE FROM TablazatNeve; kitörli az összes sorát a táblázatnak DELETE FROM TablazatNeve WHERE oszlop1 = valamiertek; kitörli azt a sorát a táblázatnak aminek az oszlop1-e valamiertek DELETE FROM TablazatNeve WHERE oszlop2 like valamiresz; azokat a sorokat törli ki aminek az oszlop2 oszlopában olyan adat van amiben szerepel a valamiresz Pl: DELETE FROM Neptun WHERE id = 23; DELETE FROM Neptun WHERE NeptunKod like 3RG ;

Update Az UPDATE paranccsal tudunk már létező helyre új adatot beírni: UPDATE TablazatNeve SET oszlop2 = valami1 WHERE oszlop1 = valami2;

Update Az UPDATE paranccsal tudunk már létező helyre új adatot beírni: UPDATE TablazatNeve SET oszlop2 = valami1 WHERE oszlop1 = valami2; Pl: UPDATE Neptun SET NeptunKod = C3WRGS WHERE id = 23;

Select Az utolsó alap parancs a SELECT amivel kiolvashatunk adatokat táblázatokból: SELECT * FROM TablazatNeve; minden adatot kiolvas a táblázatból SELECT oszlop1, oszlop3 FROM TablazatNeve; csak adott oszlopok adatait olvassa ki SELECT * FROM TablazatNeve LIMIT 4; csak az első 4-et fogja kiírni SELECT * FROM TablazatNeve LIMIT 4 OFFSET 3; 4-et ír ki, de a 3.-tól kezdve SELECT * FROM TablazatNeve ORDER BY oszlop2; az oszlop2 szerint rendezve adja ki SELECT * FROM TablazatNeve ORDER BY oszlop2 DESC; az oszlop2 szerint csökkenő sorrendben adja ki SELECT * FROM TablazatNeve WHERE oszlop2 = valami; csak azokat írja ki amikre teljesül az adott feltétel

Select példák SELECT * FROM Neptun; SELECT Nev FROM Neptun; SELECT Nev, id FROM Neptun; SELECT * FROM Neptun ORDER BY Nev; SELECT NeptunKod FROM Neptun ORDER BY Atlag DESC LIMIT 3;

Hasznos dolgok Ha van olyan oszlopa a táblázatunknak amire egyfajta kulcsként tekinthetünk, talán csak egy számláló, vagy ilyesmi, akkor azt definiálhatjuk primary key-nek: CREATE TABLE Neptun(id integer primary key, Nev text...); Ha így adjuk meg az id-t, akkor alapból szerinte fogja rendezni a kiadott adatokat, és ha nem adjuk meg egy INSERT-nél az id értékét, akkor lépteti az előző sorból.

Hasznos dolgok Ha van olyan oszlopa a táblázatunknak amire egyfajta kulcsként tekinthetünk, talán csak egy számláló, vagy ilyesmi, akkor azt definiálhatjuk primary key-nek: CREATE TABLE Neptun(id integer primary key, Nev text...); Ha így adjuk meg az id-t, akkor alapból szerinte fogja rendezni a kiadott adatokat, és ha nem adjuk meg egy INSERT-nél az id értékét, akkor lépteti az előző sorból. Ha lesz olyan oszlopunk ahova nem mindig adunk meg értéket, de szeretnénk ha szerepelne ott valami mindig, akkor használhatjuk a default értéket: CREATE TABLE Neptun(id integer primary key, Nev text, NeptunKod text, Atlag real default 5.0); Így ha nem adunk meg átlagot egy sorban akkor oda 5.0-t rak.

Mindez javaban import java.sql.*; be kell töltenünk connection = DriverManager.getConnection("jdbc:sqlite:hallgatok.db"); így tudjuk betölteni a hallgatok.db adatbázist Statement statement = connection.createstatement(); kell ahhoz, hogy utasításokat tudjunk adni statement.executequery("select * from person"); ezek után így tudunk futtatni sqlite3 parancsokat rajta, amit ez visszaad az egy iterálható dolog, szóval egy for vagy while ciklussal végig tudunk menni rajta statement.executeupdate("insert into hallgatok (kod, nev, szak) values (c2, kk, tt)") így pedig tudunk új értékeket rakni az adatbázisba További leírás: https://bitbucket.org/xerial/sqlite-jdbc