Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Készítette: Pető László

Hasonló előadás


Az előadások a következő témára: "Készítette: Pető László"— Előadás másolata:

1 Készítette: Pető László
ACCESS Készítette: Pető László

2 Az egyed A nyilvántartás szereplői pl.: az osztály tanulói
A nyilvántartás célja határozza meg, hogy az egyedekről milyen adatokat tartunk nyilván. pl.: tanárok - érdemjegy; cipész - lábméret

3 A rekord Ugyanazon egyedről nyilvántartott adatok összessége
általában sorszámmal látjuk el tanulókról például rekordot alkothat: név, születési hely, születési dátum, testvérek száma, tanulmányi átlag, bejáró-e.

4 A mező A nyilvántartás oszlopai
A rekordok adatai a mezők sorrendjének megfelelően kell, hogy kövessék egymást.

5 Az adatbázisfájl A nyilvántartás valamilyen háttértárolón, fájlban helyezkedik el. Több összetartozó adatbázisfájl és a hozzájuk tartozó kiegészítő állományok (pl. indexfájl) alkotják az adatbázist.

6 A relációs adatbázis

7 Az adatbázis-kezelők feladata
Az adatbázisfájl létrehozása Az adatbázisfájl kiegészítése újabb rekordokkal A rekordok tartalmának módosítása Rekordok törlése Válogatás a rekordok között Művelet elvégzése az adatbázisfájlban szereplő adatokkal

8 Az adatbázis-kezelők feladata
A rekordok sorrendjének megváltoztatása Több adatbázisfájl egyidejű használata Az adatok kiírása Jelentéskészítés Lekérdezések végrehajtása

9 ACCESS A Microsoft Office irodai programcsomag adatbázis-kezelő programja

10 A mező neve A mezők azonosítója max. 64 karakterből állhat.
Az azonosítókat a felhasználó adja meg. Nem tartalmazhat pontot, felkiáltójelet és szögletes zárójelet, de szóközt igen.

11 Példa mezőnevekre

12 Adattípusok szám dátum karaktersorozat (szöveg) logikai feljegyzés
pénznem számláló OLE objektum hiperhivatkozás keresésvarázsló

13 Szám Csak számjegyeket, tizedesvesszőt és előjelet tartalmazhat -18,25
1965 +34,22 1, 2, 4 vagy 8 bájt

14 Dátum 8 bájt hosszú Dátumokat és időpontokat tartalmazhat.

15 Karaktersorozat Tetszőleges karaktereket tartalmazhat Bartók Béla
Legfeljebb 255 bájt

16 Logikai adat Igen vagy nem jellegű kérdésekre tartalmazhat választ.
Az igent az Y vagy a T betű jelentheti A nemet az N vagy az F betű jelentheti 1 bit

17 Feljegyzés Alfanumerikus karakterek Legfeljebb 64 kbájt

18 Pénznem Pénzérték 15 egész és 4 tizedes érték lehet 8 bájt

19 Számláló Egész számérték
Az Access automatikusan kezeli a rekordok felvételekor 4 bájt

20 OLE objektum Kép, hang, Excel-tábla, Word dokumentum, stb., amit az Access táblához csatolhatunk. Legfeljebb 1 Gbájt

21 Hiperhivatkozás Szöveg, vagy szöveg és számok kombinációja, ami három részből áll Részenként max karakter

22 Keresésvarázsló Erre kattintva keresőmező jön létre, amellyel egy másik listából vagy táblából választhatunk értékeket. Az elsődleges kulcs mérete általában 4 bájt.

23 Mezőméret A szövegmező mérete 1 és 255 karakter között, vagy a szám mezőfajtája adható meg.

24 Számformátumok Bájt: 0 és 255 közötti egész – 1 bájt
Egész: és közötti egész – 2 bájt Hosszú egész: -3,4E38 és 3,4E38 közötti számok 7 tizedes pontossággal – 4 bájt Dupla: -1,797E308 és 1,797E308 közötti számok 15 tizedes pontossággal – 8 bájt

25 Formátum Az adatok megjelenítési és kinyomtatási módjának beállítása.
Lehet szabványos, alapértelmezett, vagy egyedi.

26 Tizedeshelyek Szám és pénznemtípusok esetén a kijelzett tizedeshelyek száma adható meg.

27 Beviteli maszk Formázó karaktereket jelenít meg a mezőben, és biztosítja, hogy a bevitt adatok megfeleljenek a beállított maszknak.

28 Cím A mező átnevezésére szolgál.
Az eredeti név helyett ez jelenik meg majd az adattáblában, a lekérdezésben, az űrlapon és a jelentésben.

29 Alapértelmezett érték
Új rekord hozzáadásakor a mezőt automatikusan feltöltő érték.

30 Érvényességi szabály A mezőbe bevihető adatok körét korlátozó kifejezés.

31 Érvényesítési szöveg Az adatmezőben érvénytelen adat beírásakor megjelenő figyelmeztető üzenet.

32 Kötelező Ezzel a beállítással előírjuk, hogy a mezőbe mindig kell adatot bevinni, nem hagyható üresen.

33 Nulla hosszúság engedélyezése
Szöveg vagy feljegyzés esetén megengedi, hogy tárolhassunk nulla hosszúságú sztringet.

34 Indexelt Az adott mező szerint rendezi logikailag a táblát, ami később gyorsítja az adatkeresést.

35 Új értékek Számláló esetén megadható, hogy az új rekord növekvő módon, vagy véletlenszerűen kapjon értéket.

36 Az adatbázisfájl tervezése
Kik lesznek az egyedek? Milyen adatokat akarunk az egyedekről tárolni? (mezők) Mi legyen a mezők neve? Milyen típusúak legyenek a mezők? Milyen hosszúak legyenek a karakteres és a numerikus mezők? A numerikus mezők hány tizedest tartalmazzanak?

37 Példa - KÖNYV Szerző Cím Kiadás éve Vannak-e benne képek? Ára

38 Példa - ISMERŐSÖK Név Születési dátum Irányítószám Város Utca Házszám

39 Bejelentkező képernyő

40 Az adatbázis ablak

41 Az adatbázisfájl létrehozása
Fájl | Új | Üres adatbázis (név: WORK) Az adatbázis ablakban: Táblák | Tábla létrehozása tervező nézetben

42 Az adattábla szerkezetének begépelése

43 Az adattábla szerkezetének begépelése

44 Az adattábla szerkezetének begépelése

45 Az adattábla szerkezetének begépelése

46 Az adattábla szerkezetének begépelése

47 Az adattábla szerkezetének begépelése

48 Az adattábla szerkezetének begépelése

49 Az adattábla szerkezetének mentése
Fájl | Mentés (Táblanév: Tanulók) Az elsődleges kulcs a számláló legyen.

50 Az adatbázis feltöltése

51 Az adatbázisfájl feltöltése
Külön mentésre nincs szükség!

52 Az aktuális rekord A nyitott adatbázisfájl kitüntetett rekordja
Célszerű azt aktuálissá tenni, amelyikre szükségünk van. A rekordmező mutatja az aktuális rekord sorszámát.

53 Struktúra módosítása Adjunk az adattáblához egy új mezőt, ami a tanuló személyi számát tartalmazza! Tervező nézet!

54

55 Adatbeviteli maszk Az adatbevitelt segítő mezőtulajdonság
Csak meghatározott karakterek begépelését engedélyezi.

56 Maszkkarakterek 0: számjegy, kötelező bevinni
9: számjegy, nem kötelező #: számjegy, előjel vagy szóköz; nem kötelező L: betű, kötelező ?: betű, nem kötelező A: betű vagy számjegy, kötelező

57 Maszkkarakterek a: betű vagy számjegy, nem kötelező
&: bármilyen karakter vagy szóköz, kötelező C: bármely karakter vagy szóköz, nem kötelező .,:;-/ : tizedeshelyek és ezres, dátum- és időelválasztók

58 Maszkkarakterek <: minden ezt követő karakter kisbetűssé konvertálódik >: nagybetűsre !: a beviteli mező jobbról balra töltődik ki \: az ezt követő karakter változatlanul jelenik meg.

59 Beviteli maszk Adjuk meg a személyi igazolvány számához szükséges beviteli maszkot! Mentsük a táblát!

60

61

62 Rekord hozzáfűzése Beszúrás > Új rekord

63 Rekordok törlése Rekord törlése gomb

64 Űrlapok használata

65

66

67 Űrlap futtatása Dupla kattintás

68 Példa

69 Példa

70 Feladatok Készítse el a fenti adattáblát! Készítsen hozzá űrlapot!

71 Feladat

72 Feladat

73 Feladat Hozd létre az adattáblát Készíts űrlapot!

74 Lekérdezések Az adattáblák adatainak kiválogatása megadott feltételek szerint. Választó Forrása egy vagy több tábla, eredménye dinamikus adattábla Kereszttáblás Csoportosított adatok összegét, átlagát vagy egyéb összesítését számítja

75 Lekérdezések Táblakészítő: Törlő: Hozzáfűző: Frissítő:
Egy vagy több táblából egy újabb táblát készít Törlő: Segíti a törlésre szánt rekordok kiválasztását Hozzáfűző: Táblához hozzáfűzendő rekordok kiválasztása más táblákból. Frissítő: Sok mező adatainak a módosítását gyorsíthatja.

76 Lekérdezések Paraméteres:
A lekérdezés feltételei futás közben adhatók meg.

77 Feladat A dolgozókat tartalmazó adatbázisból listázzuk az összes dolgozó nevét és havi alapbérét! Listázzuk az egyetemet végzett vezető beosztású dolgozók nevét és éves járandóságát!

78 Feladat Listázzuk a Ft-nál kevesebb havi alapbérű dolgozók nevét és alapbérét! Listázzuk az összes nem vezető beosztású Ft-nál magasabb havi alapbérű dolgozó nevét Listázzuk az összes olyan dolgozó nevét és havi alapbérét, aki 23 éves kora után került a céghez!

79 Jelentéskészítés Az adatbázisban nyilvántartott adatok nyomtatásban való megjelenítésére szolgál A jelentés szakaszai: Jelentésfej: A jelentés címét tartalmazza Oldalfej: Minden oldal tetején megjelenő szöveges információ Csoportfejléc: A csoportosítás alapját képező mezőt jeleníti meg.

80 Jelentéskészítés Törzs: Csoportlábléc: Oldalláb: Jelentésláb:
Az adatok Csoportlábléc: a csoportra vonatkozó számításokat tartalmazza Oldalláb: Minden oldal alján megjelenik Jelentésláb: A legutolsó oldal legutolsó információi

81

82

83 Feladatok A tanulói adatbázisból tudjuk meg, hogy a tanulóknak hány testvérük van? Mennyi a tanulók tanulmányi átlaga? Hány tanulónak jobb a tanulmányi átlaga 3,75-nél? Mennyi a bejáró tanulók átlaga? Hány tanuló születet 1988 előtt?

84 Indexelés A rekordok kezelési sorrendjét anélkül változtatjuk, hogy azok fizikai sorrendje változna. A kezelési sorrend módosítását egy általunk megadott kifejezéssel, a kulcskifejezéssel valósítjuk meg. A kulcskifejezés értéke minden rekordnál kiszámítódik, a rekordok ezen érték szerint növekvően alakítják ki a kezelési sorrendet.

85 Indexelés A kialakuló sorrend egy indexfájlban tárolódik.
Az indexfájl ugyanannyi rekordból áll, mint az adatbázisfájl. Két mezőből áll: a kulcskifejezés értéke a rekordok eredeti sorszáma Az adatbázisfájlt ilyenkor indexelt adatbázisfájlnak nevezzük

86 Példa Kulcskifejezés: TESTVER*10+ATLAG

87 Példa Az indexfájl: Kezelési sorrend: Első a 6. Rekord
második a 3. Rekord harmadik a 2. Rekord negyedik az 5. Rekord ötödik az 1. Rekord hatodik a 4. Rekord

88 Feladatok A dolgozói adatbázist indexelje névsor szerint!
A dolgozói adatbázist indexelje alapbér szerint!

89 Adatbázisfájlok kapcsolata (Feladaton keresztül)
ISMEROS

90 Adatbázisfájlok kapcsolata (Feladaton keresztül)
POSTA

91 Kapcsoló-kifejezés Amely alkalmas két adatbázisfájl közötti kapcsolat kialakítására. Az előző feladatban az IRSZ illetve a SZAM mezők voltak a kapcsoló-kifejezések.

92 Két adatbázisfájl összekapcsolása
A kapcsoló-kifejezések segítségével tartós kapcsolatot alakítunk ki az adatbázisfájlok között. Az összekapcsolt adatbázisok nem egyenrangúak; vezér  szolga A tartósság azt jelenti, hogy a vezér bármely rekordját aktuálissá téve a szolga azon rekordja válik aktuálissá, amely biztosítja, hogy a kapcsoló-kifejezések értéke ugyanaz legyen.

93 Az összekapcsolás menete
A vezért és a szolgát is meg kell nyitni A szolgával kapcsolatban létre kell hozni egy indexfájlt, amely a kapcsoló-kifejezés szerinti növekvő sorrendet biztosítja.

94 Az összekapcsolás menete
Eszközök > Kapcsolatok…

95 A Szam mezőt húzd át az IRSZ-hez!

96

97

98 Lekérdezés két táblából
Listázzuk az ismerőseink nevét, és lakhelyét!

99

100 Jelentés létrehozása lekérdezésből
Készítsük el az előbbi lekérdezés nyomtatható változatát!

101

102 Adatbázisfájlok együttes tervezése
Ha tervezéskor kiderül, hogy egy mezőben az értékek gyakran ismétlődnek, akkor azokat érdemes külön adatbázisfájlban elhelyezni, mert ott csak egyszer kell őket szerepeltetni. Valamilyen kóddal érdemes helyettesíteni, ami mindkét adatbázisban kapcsoló-kifejezés lesz.

103 Több adatbázisfájl összekapcsolása
Egy vezérhez egyidejűleg több szolga kapcsolható A szolga is vezére lehet egy másik adatbázisfájlnak. Kétszer nem szerepelhet a láncban ugyanaz az adatbázisfájl

104 Példa FORGALOM egy áruház napi forgalmi adatait tartalmazza

105 Példa ARU tartalmazza, hogy melyik cikkszám melyik árut jelenti, az áru egységárát, mennyiségi egységét.

106 Példa MERTEK innen lehet megtudni, hogy melyik mértékegységkód melyik mértékegységet jelöli

107 Példa A FORGALOM és az ARU a cikkszám segítségével kapcsolhatók össze
Az ARU és a MERTEK a mértékegységkód segítségével kapcsolhatók össze.

108 Az SQL SQL : Structured Query Language
Az Accessben történő lekérdezések mindig SQL-ben készülnek. Nagyobb lélegzetű lekérdezések esetén elengedhetetlen a nyelv ismerete.

109 Új tábla létrehozása CREATE TABLE táblanév( Mező1 típus (méret)
……… )

110 Kapcsolat más táblákkal
CONSTRAINT név PRIMARY KEY vagy UNIQUE vagy REFERENCES külsőtábla

111 Új index létrehozása CREATE INDEX index ON tábla

112 Törlés Tábláé: DROP TABLE tábla Indexé: DROP INDEX index ON tábla

113 SELECT SELECT mezőnevek FROM táblanevek WHERE feltétel
GROUP BY csoportosítás HAVING feltétel ORDER BY rendezési szempont

114

115 1. Feladat Hozz létre egy Tanulo nevű táblát (Tankod Integer, TanNev Text(20)) típusú mezőkkel! Az SQL parancs beírása után nyissuk meg és töltsük fel 8-10 adattal!

116

117 Like Kérdezd le a „K” betűvel kezdődő tanulók összes adatát!
SELECT * FROM Tanulo WHERE TanNev LIKE "K*";

118 2. Feladat Kérdezd le a Tanulo tábla összes adatát!
SELECT * FROM Tanulo;

119 3. Feladat Kérdezd le a tábla összes sorát, de csak a tanulók neve jelenjen meg! SELECT TanNev FROM Tanulo;

120 4. feladat Jelenítsd meg a K és L betűvel kezdődő tanulók nevét!
SELECT TanNev FROM Tanulo WHERE TanNev LIKE "[K-L]*";

121 5. Feladat Listázd ki azon hallgatók kódját, akiknek a neve nem kezdődik A,B,C betűvel! SELECT Tankod FROM Tanulo WHERE TanNev LIKE "[!A-C]*"

122 6. Feladat Egészítsük ki a táblát egy osztondij integer típusú mezővel! ALTER TABLE Tanulo ADD osztondij integer; Egészítsd ki a tábla rekordjait az ösztöndíjak értékével!

123 7. Feladat Listázd ki a 10 és 20 ezer forint közötti ösztöndíjjal rendelkező hallgatók összes adatát! SELECT * FROM Tanulo WHERE (osztondij <=20000) AND (osztondij>=10000); illetve SELECT * FROM Tanulo WHERE osztondij BETWEEN AND 20000

124 8. Feladat Listázd ki azon hallgatók nevét, akiknek az ösztöndíja kevesebb, mint Ft! SELECT tannev FROM tanulo WHERE osztondij<15000;

125 9. Feladat Listázd ki azon hallgatók nevét és kódját, akiknek a neve K betűvel kezdődik, és ösztöndíjuk kevesebb, mint Ft! SELECT TanNev,TanKod FROM Tanulo WHERE TanNev LIKE "K*" AND osztondij<20000;

126 10. Feladat Listázd ki a nem ABCDEFG betűvel kezdődő nevű hallgatók ösztöndíjának 10%-át! SELECT (osztondij*0.1) FROM Tanulo WHERE tannev LIKE "[!A-G]*";

127 11. feladat Listázzuk ki az összes tanuló nevét és ösztöndíjának 10%-kal emelt összegét! Az emelt összeg mező neve legyen: emelt! SELECT TanNev, (osztondij*1.1) AS emelt FROM tanulo;

128 12. feladat Hajtsunk végre 10%-os ösztöndíjemelést minden tanulóra!
UPDATE tanulo SET osztondij=osztondij*1.1; Hajtsunk végre további 8%-os emelést minden 10-nél kisebb kódú tanulónál! UPDATE tanulo SET osztondij=osztondij*1.08 WHERE tankod<10;

129 13. feladat Írassa ki az összes hallgató összes adatát névsorban!
SELECT * FROM tanulo ORDER BY tannev;

130 14. feladat Írassa ki az összes hallgató összes adatát ösztöndíj és azon belül név szerint rendezve! SELECT * FROM tanulo ORDER BY osztondij, tannev;

131 15. feladat Írassa ki, hogy havonta mennyi ösztöndíjat kell kifizetni a hallgatóknak! A számolt mező neve legyen osszes! SELECT SUM(osztondij) AS osszes FROM tanulo;

132 16. feladat Egészítsük ki a tábla szerkezetét egy neme nevű 1 karakteres típusú mezővel! (Az „N” érték jelentse, hogy a tanuló nő, az „F” érték jelentse, hogy a tanuló férfi!) ALTER TABLE Tanulo ADD neme varchar(1); Aktualizáljuk a táblát!

133 17. feladat Listázza ki a nő és a férfi hallgatók átlag ösztöndíját! Az átlagot jelző mező neve legyen atlag! SELECT Avg(osztondij) AS atlag FROM tanulo GROUP BY neme;

134 18. feladat Egészítse ki az előző lekérdezést úgy, hogy láthassuk, hogy melyek a férfiak, melyek a nők átlagai! SELECT Avg(osztondij) AS atlag, IIF(neme=„F”,”FÉRFI”,”NŐ”) AS [Tanuló neme] FROM tanulo GROUP BY neme;

135 19. feladat Hozzunk létre egy újabb táblát, mely a tanulók jegyeit tartalmazza. A tábla neve: JEGYEK, szerkezete: Tankod integer Tantargy varchar(20) Jegy Byte CREATE TABLE jegyek(tankod integer, tantargy varchar(20), jegy byte);

136 20. feladat Töltse fel úgy a táblát, hogy legyen olyan tanuló, akinek egy tárgyból több jegye van, legyen olyan tanuló, akinek nincs jegye (olyan kódú hallgatót nem kell felvenni a jegyek táblába!), de legyen olyan hallgató is, akinek csak 1 jegye van 1 tárgyból!

137 21. feladat Jelenítse meg a tanuló nevét, mellé a tantárgy megnevezését, és a megszerzett jegyet! SELECT tannev, tantargy, jegy FROM tanulo, jegyek WHERE tanulo.tankod=jegyek.tankod;

138 22. feladat Listázza ki azon hallgatók nevét, akik valamilyen tantárgyból jelest szereztek! SELECT DISTINCT(tannev) FROM tanulo, jegyek WHERE tanulo.tankod=jegyek.tankod AND jegy=5; (DISTINCT : ismétlődés elnyomás! Miért?)

139 23. feladat Listázza ki a tanulók nevét és átlageredményét!
SELECT tannev, avg(jegy) as atlageredmeny FROM tanulo, jegyek WHERE tanulo.tankod=jegyek.tankod GROUP BY tannev;

140 24. feladat Írassa ki a tantárgy megnevezését és átlageredményét!
SELECT tantargy, avg(jegy) as tantargyatlag FROM tanulo, jegyek WHERE tanulo.tankod=jegyek.tankod GROUP BY tantargy;

141 25. feladat Írassa ki a 3.0 átlagnál jobb eredményt elért tanulók nevét! SELECT tanulo.tannev FROM tanulo, jegyek WHERE tanulo.tankod=jegyek.tankod GROUP BY tanulo.tannev HAVING Avg(jegy)>3; Ha a lekérdezés feltételében függvény van, akkor azt a HAVING után kell írni!

142 26. feladat Írassuk ki azon tanulók nevét, akiknek a kódja 1,2,5,6
SELECT tannev FROM tanulo WHERE tankod IN (1,2,5,6);

143 27. feladat Írassuk ki azon tanulók nevét, akiknek a kódja nem 1,2,5,6! SELECT tannev FROM tanulo WHERE NOT (tankod IN (1,2,5,6));

144 28. feladat Kik azok a tanulók akik nem kaptak jegyet?
SELECT tannev FROM tanulo WHERE NOT (tankod IN (SELECT tankod FROM jegyek));

145 29. feladat Listázza ki minden tanuló nevét és elért legjobb osztályzatát! SELECT tannev, max(jegy) FROM tanulo, jegyek WHERE jegyek.tankod=tanulo.tankod GROUP BY tannev;

146 30. feladat Keresse ki azon tanulók nevét, akik a legjobb osztályzatot érték el! (Nem biztos, hogy 5-ös!!!) SELECT DISTINCT (Tannev) FROM Tanulo, Jegyek WHERE Tanulo.Tankod=jegyek.tankod AND (jegyek.jegy=(SELECT max(jegy) FROM JEGYEK));

147 VÉGE


Letölteni ppt "Készítette: Pető László"

Hasonló előadás


Google Hirdetések