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

Slides:



Advertisements
Hasonló előadás
Koordináták, függvények
Advertisements

Weblapkészítési tudnivalók 2: Útmutató az elnevezésekhez Pék Ágnes © 2009.
10. gyakorlat SQL SELECT.
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
Informatika I. 6. Adattábla függvények, érzékenységi vizsgálatok.
Access Adatbáziskezelés
Microsoft Access Lekérdezések.
Adatbázisokat és Adattáblákat kezelő FoxPro parancsok és utasítások Páll Boglárka
Ismétlés. Ismétlés: Adatbázisok megnyitása: OPEN DATABASE adatbázis_név OPEN DATABASE ”adatbázis_név elérési útvonallal” Adattábla megnyitása: USE tábla_név.
ADATBÁZIS KEZELÉS – Adattípusok
5. GYAKORLAT SQL CREATE TABLE, aktualizálás. S QL Structured Query Language A relációs adatbáziskezelés szabványos nyelve Nem algoritmikus, de beépíthető.
2012. március 6. Rózsa Győző Interaktív környezet március Rózsa Győző
Táblázat kezelő programok
Turbo Pascal Változók.
Adatbázis-kezelés.
16. Tétel. Adatbázis: Olyan adatgyűjtemény, amely egy adott feladathoz kapcsolódó adatokat szervezett módon tárolja, és biztosítja az adatokhoz való hozzáférést,
Adatbázis alapú rendszerek
Készítette: Pető László
Delphi programozás alapjai Nagyváradi Anett PTE PMMK MIT.
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Operációs rendszerek gyakorlat sed, awk parancsok.
Kifejezések. A legfontosabb függvények.
Összesítés és csoportosítás lekérdezésekben. Halmazműveletek.
Microsoft Excel Függvények VII..
Microsoft Excel Függvények II.
- adatbázisséma definiálása (DDL) Data Definition Languages, - adatok aktualizálása (DML),Data Maniputaion Language - lekérdezési lehetőségek (DML) Data.
SQL.
Az SQL nyelv alapjai.
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
Alapszint 2.  Készíts makrót, ami a kijelölt cellákat egybenyitja, a tartalmat vízszintesen és függőlegesen középre igazítja és 12 pontos betűméretűre.
Klasszikus Programozás a FoxPro-ban
Adatok Frissítése az Adatbázisokban Páll Éva Boglárka.
2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK / 18.
2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK / 29.
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Szintaktikai, szemantikai szabályok
1.3. Pascal program felépítése Az els ő program. Program ; … Begin … End. Program fej Deklarációs rész Végrehajtó rész.
A képernyő kezelése: kiíratások
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
Csempe Programozás érettségi mintafeladat
Microsoft Excel függvények
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
Objektum orientált programozás
Adatbázisok gyakorlat
Adatbázis alapfogalmak
Webprogramozó tanfolyam
ACCESS Lekérdezések, űrlapok, jelentések
SQL. SQL jellemzői Nem algoritmikus (nem tartalmaz algoritmikus szerkezeteket: ciklus, eljárás, elágazás) Nem rekurzív (önmagát nem hívhatja) Halmazorientált.
Számtani és mértani közép
Adatbázis-kezelés 3-4. Adatok lekérdezése utasítás általános formája SELECT [ALL/DISTINCT] {*/, …, } FROM [ ], …, [ ] [WHERE GROUP BY, …, HAVING ORDER.
9. osztály Táblák létrehozása. Létrehozás Tervező nézetben  Üres adatbázis létrehozása.  Adatbázis mentése.  Objektumok oszlopban a Táblák sorra kattintunk.
Táblázatkezelés KÉPLETEK.
Fontos tudnivalók A MATLAB egy fajta objektummal dolgozik (Mátrix)
Függvények II..
– SELECT - 1. – Tarcsi Ádám január Adatbázis gyakorlat.
Bekezdések formázása 1..
Függvények.
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Gazdasági informatikus - Szövegszerkesztés 1 Bekezdések formázása 2.
BIOLÓGUS INFORMATIKA 2008 – 2009 (1. évfolyam/1.félév) 6.
Táblák létrehozása és feltöltése adatokkal Rendezés Szűrés.
Készítette: Kiss András
Lekérdezések Adott tulajdonságú adatok listázásának módja a lekérdezés. A lekérdezések segítségével az adatbázisból megjeleníthetjük, módosíthatjuk, törölhetjük.
Kifejezések C#-ban.
Total commander.
Adatbázis-kezelés 2. Relációs adatbázisok.
MySQL DDL parancsok – Adatbázis műveletek, mezőtípusok
Előadás másolata:

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

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

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.

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

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.

A relációs adatbázis

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

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

DBASE Az egyik legegyszerűbb és legismertebb adatbázis-kezelő Az adatbázisfájl nevének kiterjesztése csak DBF lehet.

A mező neve A mezők azonosítója max. 10 karakterből állhat. Az azonosítókat a felhasználó adja meg. Szerepelhetnek benne: az angol ABC nagy betűi számjegyek aláhúzásjel

Példa mezőnevekre

Adattípusok szám dátum karaktersorozat (szöveg) logikai

Szám Csak számjegyeket, tizedespontot és előjelet tartalmazhat -18.25 1965 +34.22

Dátum 8 karakterből áll: az év 4 számjegye, a hónap 2 számjegye és a nap 2 számjegye 1965.02.21 2004.08.11

Karaktersorozat Tetszőleges karaktereket tartalmazhat Bartók Béla 76-324616 76324616

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

Rövidítések

Példa

A mező hossza Azt a számot, amely megadja, hogy a mező legfeljebb hány karaktert tartalmazhat, a mező hosszának nevezzük.

Megjegyzések A logikai mező hossza mindig 1. A dátum mező hossza mindig 8. Karakteres mező nem lehet hosszabb 254-nél. Numerikus mező nem lehet hosszabb 19-nél. A tizedesjegyek száma nem lehet több 15-nél. A numerikus mező hossza legalább kettővel kell, hogy több legyen, mint a tizedesjegyek száma.

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?

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

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

Szükséges állományok DBASE.EXE - maga a program DBASE.OVL - kiegészítés DBASEINL.OVL - kiegészítés DBASE.MSG - üzenetek HELP.DBS - súgó CONFIG.DB - konfigurációs állomány

Megjegyzés A gép CONFIG.SYS állománya a következő sorokat kell tartalmazza mindenképp: FILES = 20 BUFFERS = 15 Az nem baj, ha nagyobb értékek szerepelnek!

Bejelentkező képernyő

A parancs-cella Milyen parancs végrehajtása van folyamatban. Ha Parancs Sor felirat látható, akkor nincs végrehajtás alatt álló feladat.

A meghajtó-cella Az aktuális meghajtót mutatja.

Az adatbázisfájl-cella Annak az adatbázisfájlnak a nevét mutatja, amin éppen dolgozunk. Ha üres, akkor nincs nyitott adatbázisfájl.

A rekord-cella Ha dolgozunk egy adatbázison, akkor az abban lévő összes rekord számát mutatja, és azt, hogy hányadik rekordon állunk.

Az üzemmód-cella INS billentyűvel válthatunk a betoldó és a felülíró üzemmód között. Az üzemmódok állapotát mutatja.

A lámpa-cella A NumLock és a CapsLock lámpák állapotát jelzi ki.

A kurzor kurzor Ide kell begépelni a parancsokat. Kis és nagybetűk egyaránt használhatók Egy parancs max. 254 karakterből állhat. A parancs begépelése után ENTER-t kell ütni. Az előzőleg kiadott parancsok között a fel és le nyilakkal közlekedhetünk.

CLEAR Képernyő törlése

QUIT Kilépés a DBASE-ből

Az adatbázisfájl létrehozása CREATE fájlnév CREATE WORK.DBF

Az adatbázisfájl szerkezetének begépelése

Az adatbázisfájl szerkezetének mentése CTRL+END

Az adatbázis feltöltése

Az adatbázisfájl feltöltése Lezárás: CTRL+END

Az adatbázisfájlok számbavétele DIR

Adatbázisfájl megnyitása USE önmagában kiadva lezárja a nyitott adatbázisfájlt USE fájlnév USE KIRALY.DBF

Adatbázisfájl szerkezetének kiíratása DISPLAY STRUCTURE

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 rekord-cella mutatja az aktuális rekord sorszámát. Ha a rekord-cellában EOF látható, akkor nincs aktuális rekord. Ha a rekord-cellában None látható, akkor a fájlnak nincsenek rekordjai.

Kijelölés GO paranccsal GO 7 : a hetedik rekordot tesszük aktuálissá GO TOP : az első rekord így is aktuálissá tehető GO BOTTOM : az utolsó rekord így is aktuálissá tehető

Kijelölés SKIP paranccsal SKIP 4 : ha pl. jelenleg a 6. rekord az aktuális, akkor a 10. válik aktuálissá SKIP -3 : ha jelenleg a 9. rekord volt aktuális, akkor a 6. válik aktuálissá. SKIP szám nélkül ugyanaz, mint SKIP 1 Ha a paranccsal az első rekord előttire hivatkoznánk, akkor az első válik aktuálissá. Ha az utolsó utánira hivatkoznánk, akkor nem lesz aktuális rekord.

Rekord hozzáfűzése APPEND Befejezés: CTRL+END

Rekord betoldása INSERT : Az aktuális rekord után told be

Rekord betoldása INSERT BEFORE : Az aktuális rekord elé told be.

Aktuális rekord kiíratása DISPLAY

Adatbázis tartalmának kiíratása DISPLAY ALL

Adatbázis tartalmának kiíratása LIST

Módosítás EDIT

Módosítás CHANGE

Módosítás BROWSE

Rekordok törlése DELETE : kijelöli a törlésre szánt rekordot RECALL : megszünteti a rekord törlésre kijelöltségét PACK : valamennyi törlésre kijelölt rekordot eltávolítja az adatbázisból. Visszavonhatatlan következményekkel jár.

DELETE

RECALL

PACK

ZAP Az adatbázisfájl összes rekordját visszavonhatatlanul törli.

Konstansok, konstanstípusok pl.: a GO 9 parancsban a 9 konstans. numerikus karakteres logikai

Konstansok megadása Numerikus: -18.25 1965 +34.22

Konstansok megadása Karakteres ”Bartók Béla” ‘76-324616‘ ‘76324616‘

Konstansok megadása Logikai .Y. (igaz) .N. (hamis) .T. (igaz) .F. (hamis)

Műveletek + : összeadás - : kivonás * : szorzás / : osztás ** vagy ^ : hatványozás .AND. : logikai és .OR. : logikai vagy .NOT. : logikai tagadás

Műveletek < : kisebb > : nagyobb = : egyenlő <= : kisebb vagy egyenlő >= : nagyobb vagy egyenlő <> vagy # : nem egyenlő $ : benne foglaltatik-e?

Művelet eredményének kiíratása

Számtani műveletek

Naptári műveletek

Összefűző műveletek

Logikai műveletek

Összehasonlító műveletek

Karakterkereső műveletek

A kifejezés fogalma A kifejezés nem más, mint konstansoknak mezőneveknek műveleti jeleknek olyan összekapcsolása, aminek van értelme. Használhatók még gömbölyű zárójelpárok.

Kifejezések értelmetlen numerikus és karakteres mező tartalmát összeadni

Kifejezések

Műveletek sorrendje (1. szint, legmagasabb rendű) ** vagy ^ : hatványozás (N) + : összefűzés szóközmeghagyással (C) - : összefűzés szóközáthelyezéssel (C) $ : bennefoglaltatik (C)

Műveletek sorrendje (2. szint) - : előjelváltás (N)

Műveletek sorrendje (3. szint) * : szorzás (N) / : osztás (N)

Műveletek sorrendje (4. szint) + : összeadás (N) - : kivonás (N) + : dátum növelése (D) - : dátum csökkentése (D) - : dátumok különbözete (D)

Műveletek sorrendje (5. szint) < : kisebb (L) > : nagyobb (L) = : egyenlő (L) <= : kisebb, vagy egyenlő (L) >= : nagyobb, vagy egyenlő (L) # : nem egyenlő (L)

Műveletek sorrendje .NOT. : tagadás (6. szint) .AND. : és (7. szint) .OR. : vagy (8. szint)

Példák

Numerikus kifejezések

Numerikus kifejezések

Dátum jellegű kifejezések

Dátum jellegű kifejezések

Karakteres kifejezések

Karakteres kifejezések

Logikai kifejezések

Logikai kifejezések

Példa

Példa

Feladatok Kiss Gyula, Herczeg András, Sólyom Melinda esetén értékelje ki az ALAPBER+POTLEK-LEVONAS kifejezést! Kiss Gyula, Herczeg András, Fekete Béla és Babai Attila esetén értékelje ki az EGYETEM.AND.VEZETO kifejezést

Feladatok Herczeg András, Fekete Béla és Sólyom Melinda esetén értékelje ki az EGYETEM.AND.ALAPBER>=220000 kifejezést! Sutus Csabáné,Kertai Sándor és Kun András esetén értékelje ki a VEZETO.OR.LEVONAS>0 kifejezést!

Feladatok Csabai Antal, Kada Erika és Pfleigel Péter esetén értékelje ki a .NOT.VEZETO.AND.MUNKA_KEZD-SZUL_DATUM>23*365 kifejezést! Adja meg, hogy Kis András, Falus Róbert és Kada Erika hány napot élt addig a napig, amikor belépett!

Hatáskör fogalma aktuális rekordra vonatkozik (DISPLAY, DELETE, RECALL) valamennyi rekordra vonatkozik (LIST, EDIT, CHANGE) módosítás nélkül a parancsok mindig alapértelmezett hatáskörrel lépnek életbe.

Hatáskör módosítása RECORD NEXT ALL REST

RECORD általános hatáskörű parancs csak az aktuális rekordra vonatkozzon LIST RECORD 5 (csak az 5. rekordot listázza) DELETE RECORD 7 (csak a 7. rekordot jelöli ki törlésre)

NEXT a parancs az aktuális rekordtól számított néhány rekordra fog vonatkozni RECALL NEXT 3 (ha az aktuális rekord a 7., akkor a 7. 8. 9. rekord kijelöltsége meg fog szűnni.) LIST NEXT 4 (ha az aktuális rekord a 6., akkor 6. 7. 8. 9. rekord tartalma íródik ki.)

ALL a parancs hatáskörébe az összes rekord bele fog tartozni DISPLAY ALL (valamennyi rekord tartalmát megmutatja) DELETE ALL (az összes rekordot ki fogja jelölni törlésre)

REST a parancs hatáskörébe az aktuális és az azt követő összes rekord fog beletartozni. LIST REST (az aktuális rekordtól az adatbázis utolsó rekordjáig minden rekordot listáz) RECALL REST (az aktuális rekordtól az utolsóig megszünteti a kijelöltséget)

A feltétel Egyes parancsok hatásköre beállítható úgy, hogy csak azokon hajtódjon végre, amelyekre valamilyen feltétel teljesül.

FOR DISPLAY FOR TESTVER>3 : azokat mutatja, akiknek több testvérük van 3-nál. LIST FOR BEJARO : kilistázza a bejárókat. DELETE TESTVER>3.AND.BEJARO : kijelöli törlésre a bejárók közül azokat, akiknek 3-nál több testvérük van.

Feladat

Feladat

Feladat Írasd a képernyőre azokat a mozdonyokat, amelyek nem villanymozdonyok, és a sebességük 100 km/h-nál kisebb! Írasd a képernyőre az összes olyan mozdonyt, amelyeknek a tömege 100 tonnánál kisebb és a sebessége 100 km/h-nál nagyobb!

Feladat Írasd a képernyőre a 100 km/h-nál nagyobb sebességű Ganz-MÁVAG gyártmányú mozdonyt! Írasd ki a képernyőre a Blau Lady típusú mozdony adatait!

Kifejezéslista Tetszőleges típusú kifejezések felsorolása egymástól vesszővel elválasztva. NEV+SZUL_HELY,TESTVER*10,BEJAR.AND.TESTVER>=1,SZUL_DATUM+1

Példa

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

Feladat Listázzuk a 60000 Ft-nál kevesebb havi alapbérű dolgozók nevét és alapbérét! Listázzuk az összes nem vezető beosztású 64000 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!

Rekordsorszám letiltása OFF DISPLAY ALL : A rekordsorszámot is kiírja. DISPLAY ALL OFF : nem írja ki a rekordsorszámokat

Kiíratás a nyomtatóra LIST : a képernyőre listáz TO PRINT LIST : a képernyőre listáz LIST TO PRINT : a nyomtatóra listáz A papír nyomtatóból való kivétele előtt be kell írni a lapemelést eredményező EJECT parancsot.

Mezőlista Vannak olyan parancsok, amelyek hatásköre korlátozható néhány mezőre. A mezőlista mezőnevek vesszővel történő felsorolása. NEV,TESTVER NEV,SZUL_HELY,BEJARO A mezőlista használata előtt mindig ki kell írni a FIELDS szót!

Példák BROWSE FIELDS NEV,ATLAG : csak a tanulók nevét és átlagát módosíthatjuk. EDIT RECORD 4 FIELDS NEV,SZUL_HELY : csak a 4. rekordban szereplő tanuló neve és születési helye módosítható. CHANGE FIELDS NEV,SZUL_DATUM,TESTVER FOR BEJARO : csak a bejárók nevét, születési dátumát és testvéreinek számát módosíthatjuk.

A mezők tartalmának automatikus módosítása REPLACE [hatáskör] mezőnév1 WITH kifejezés1[,mezőnév2 WITH kifejezés2…] [FOR feltétel]

Példa

Példa A vegyi anyagok ára egységesen 20%-kal nőtt, a haszonkulcs pedig mostantól 30% lett: REPLACE BESZERZ_AR WITH BESZERZ_AR*1.2,H_KULCS WITH 30 FOR KOD=‘V’ Az élelmiszerek kódját E betűről L-re szeretnénk változtatni: REPLACE KOD WITH ”L” FOR KOD=‘E’

Összegzés SUM [hatáskör] [numerikus_kifejezéslista] [FOR feltétel] A dolgozók összes alapbére és pótléka: SUM ALAPBER,POTLEK A dolgozók számára az egész év folyamán mekkora összeget kell kifizetnünk: SUM 12*(ALAPBER+POTLEK-LEVONAS)

Átlagolás AVERAGE [hatáskör] [numerikus_kifejezéslista] [FOR feltétel] A dolgozók havi alapbérének és pótlékának átlaga: AVERAGE ALAPBER,POTLEK A dolgozók évi járandóságának átlaga: AVERAGE 12*(ALAPBER+POTLEK-LEVONAS)

Számlálás COUNT [hatáskör] [FOR feltétel] Hány olyan egyetemet végzett dolgozó van, akinek alapbére nem éri el a 80000 Ft-ot? COUNT FOR EGYETEM.AND.ALAPBER<80000

Példák SUM az eredmény három szám: a havi alapbérek, a havi bérpótlékok és a havi levonások összege AVERAGE az eredmény három szám: a havi alapbérek, a havi bérpótlékok és a havi levonások átlaga

Példák Mennyi az egyetemet végzett vezető beosztású dolgozók havi járandóságának átlaga: AVERAGE (ALAPBER+POTLEK-LEVONAS) FOR EGYETEM.AND.VEZETO

Feladatok A tanulói adatbázisból tudjuk meg, hogy a tanulóknak összesen hány testvérük van? Mennyi az osztály 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 1970 előtt?

Adatbázisfájl szerkezetének megváltoztatása MODIFY STRUCTURE Ha a mező típusát megváltoztatjuk, akkor a mező tartalma törlődhet!!! Ha a mező hosszát csökkentjük, akkor a mező tartalma csonkulhat!!! Mező hosszának növelésénél a tartalom megmarad, helykitöltő karakterekkel gyarapszik.

Adatbázisfájl szerkezetének megváltoztatása Ha egy mezőt megszüntetünk, akkor tartalma elvész!!! Új mező létrehozása után a feltöltésig üres a tartalma. Ha a mező nevét és hosszát egyszerre változtatjuk, akkor tartalma elvész.

Fájl másolása COPY FILE teljes_fájlazonosító TO teljes fájlazonosító nem lehetséges globális fájlhivatkozás, mint a DOS COPY parancsánál!!! Nyitott adatbázisfájl nem másolható!!!

Fájl átnevezése RENAME teljes_fájlazonosító TO teljes_fájlazonosító

Fájl törlése ERASE teljes_fájlazonosító globális fájlhivatkozás nem alkalmazható, mint a DOS DEL parancsánál

Kimásolás az adatbázisfájlból COPY [hatáskör] [FIELDS mezőlista] TO teljes_fájlazonosító [FOR feltétel] a másolatba csak a hatáskör által kijelölt rekordok mezőlistában megadott mezői kerülnek át.

Feladatok A tanulói nyilvántartásból másolj ki olyan adatbázist, amely a 3,75-nél jobb átlagú tanulók adatait tartalmazza! A tanulói nyilvántartásból készítsd el a bejáró tanulók nyilvántartását!

Keresés az adatbázisfájlban LOCATE [hatáskör] [FOR feltétel] CONTINUE Ha a megadott feltételnek több rekord is eleget tesz, akkor a következő megfelelő rekordra lépéshez kell a CONTINUE parancs

Rendezés Az adatbázisfájlról olyan másolatot készítünk, amelyben a rekordok valamilyen szempont szerint sorrendben helyezkednek el. SORT [hatáskör] ON igénylista [FOR feltétel] TO teljes_fájlazonosító

Igénylista egy vagy több mezőnevet tartalmazhat vesszővel elválasztva a mezőnevek /után kapcsolók követhetik /A : növekvő sorrend /D : csökkenő sorrend /C : kis- és nagybetű között nem tesz különbséget (csak karakteres mezőnél) alapértelmezés a növekvő sorrend

Példa Névsor szerinti rendezés: SORT ON NEV TO A:\NEVSOR.DBF Tanulmányi átlag szerinti csökkenő sorrend: SORT ON ATLAG /D TO A:\JEGYEK.DBF Születési hely szerint, ha az ugyanaz, akkor a testvérek száma szerint, ha az is ugyanaz, akkor születési dátum szerint csökkenő: SORT ON SZUL_HELY,TESTVER,SZUL_DATUM /D TO A:\HELY.DBF

Példa Rendezd átlag szerint csökkenő, ha az egyenlő, akkor névsor szerint azokat, akiknek 3 testvérük van! SORT ON ATLAG /D,NEV FOR TESTVER=3 TO A:\HAROM.DBF

Feladatok A dolgozói nyilvántartást rendezd névsor szerint! A dolgozói nyilvántartást rendezd alapbér szerinti csökkenő sorrendbe! A dolgozói nyilvántartást rendezd levonás szerinti csökkenő sorrendbe, azon belül születési dátum szerinti csökkenő sorrendbe!

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.

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

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

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

Az indexfájlok azonosítása Az indexfájl nevét az határozza meg, aki az indexfájlt létrehozza. Az indexfájl kiterjesztése NDX kell, hogy legyen. Megadáskor elhagyható a kiterjesztés, azt a dBase automatikusan a fájlnévhez adja.

Indexelési műveletek Indexfájl létrehozása indexfájlok megnyitása és lezárása főindexfájl kijelölése a főindexfájl módosító szerepének használata újraindexelés

Indexfájl létrehozása INDEX ON kulcskifejezés TO teljes_fájlazonosító Példa névsor szerinti indexelés esetén: INDEX ON NEV TO NEVSOR.NDX Példa átlag szerinti indexelés esetén: INDEX ON 5-ATLAG TO JEGYEK.NDX

Indexelés Az indexfájl létrehozása után automatikusan az új indexfájl hatása érvényesül. A DISPLAY parancs mindig az érvényes index szerinti sorrendet mutatja.

Példa INDEX ON SZUL_HELY+NEV TO HELY.NDX elsősorban a születési hely szerinti növekvő sorrend alakul ki azoknál a rekordoknál, ahol a születési hely ugyanaz, ott a név szerinti ABC sorrend lesz érvényben.

Példa INDEX ON TESTVER*10+ATLAG TO TEST.NDX a testvérek száma szerint rendez ahol a testvérek száma egyenlő, ott a tanulmányi átlag szerinti növekedő sorrend lesz érvényben.

Megjegyzés Kívánatos, hogy az adatbázisban végrehajtott változások az indexfájlban is megjelenjenek. Csak azokban az indexfájlokban történik változás, amelyek a módosítás pillanatában nyitva voltak.

Indexfájlok megnyitása SET INDEX TO teljes_fájlazonosítók_listája a listában a teljes fájlazonosítókat vesszővel kell elválasztani. A SET INDEX TO paraméter nélkül bezárja az összes nyitott indexfájlt!!!

Megjegyzés Ha megnyitunk egy indexfájlt, akkor az összes addigi nyitott lezáródik. Egyszerre maximum 7 indexfájl nyitható meg. Ha az INDEX paranccsal létrehozunk egy indexfájlt, akkor az automatikusan megnyílik, az összes addig nyitott záródik.

Főindexfájl kijelölése A nyitott indexfájlok közül egyet ki lehet tüntetni. A kitüntetett indexfájl neve főindexfájl. A SET INDEX parancsban az első helyen álló indexfájl automatikusan főindexfájllá válik.

Főindexfájl változtatása SET ORDER TO numerikus_konstans A numerikus konstans határozza meg, hogy a legutolsó SET INDEX parancsban szereplő indexfájlok közül melyik legyen a főindexfájl.

Megjegyzés SET ORDER TO 0 : Az indexfájlok nyitva maradnak, de nem lesz főindexfájl egyik sem. Ha új indexfájlt hozunk létre, akkor mindaddig az lesz a főindexfájl, míg másként nem rendelkezünk.

A főindexfájl módosító szerepe Ha van kijelölt főindexfájl akkor módosulhat: egyes parancsok hatásköre egyes parancsok működése

A GO és a SKIP parancs módosulása GO TOP, GO BOTTOM az indexfájl szerinti elsőt és utolsót jelenti, GO 5 továbbra is az eredeti adatbázisfájl ötödik rekordját. A SKIP parancs az indexelés szerint ugrál a rekordok között.

A hatáskör módosulása RECORD p: az eredetit jelenti NEXT p: az indexfájl szerint működik REST: az indexfájl szerint működik ALL: az indexfájl szerint működik DISPLAY, LIST, EDIT, CHANGE, DELETE, RECALL, LOCATE, CONTINUE, BROWSE: az indexfájl szerint működik.

Újraindexelés Előfordulhat, hogy az adatbázist úgy módosítottuk, hogy nem volt nyitva az indexfájl. A változásnak szeretnénk érvényt szerezni ebben az indexfájlban is. REINDEX A nyitott indexfájlokat újra létrehozza.

Az indexelés előnyei a rendezéssel szemben A rendezés megduplázza az adatbázisfájlt, nagyobb lesz a helyfoglalás. Az indexfájl viszont kisméretű. Az eredeti adatbázisfájl módosítása után mindig létre kell hozni a rendezett adatbázisfájlt. Indexelésnél legfeljebb akkor kell újraindexelni, ha az indexfájl nem volt nyitva a módosítás után.

Feladatok A dolgozói adatbázist indexelje névsor szerint! A dolgozói adatbázist indexelje alapbér szerint! Zárja le az indexfájlokat! Nyissa meg mindkét indexfájlt úgy, hogy a bér szerinti legyen a főindexfájl! Változtassa meg a főindexfájlT4

Gyorskeresés FIND karakteres_konstans vagy FIND numerikus_konstans (attól függ, hogy a főindexfájl karakteres, vagy numerikus kifejezéssel lett létrehozva) a parancs a legelső olyan rekordot teszi aktuálissá, amelynél a kulcskifejezés értéke a megadott konstanssal egyenlő. (ha több ilyen van, akkor azok úgyis egymásután jönnek.)

Példa Keressük meg azokat a dolgozókat a dolgozói nyilvántartásból, akiknek 20000 Ft a havi alapbére! INDEX ON ALAPBER TO ALAPR.NDX FIND 20000

Példa Keressük a Kovács Béla nevű dolgozókat! INDEX ON NEV TO NEVREN.NDX FIND ”Kovács Béla”

Munkaterület A Dbase-ben tíz munkaterületet használhatunk Eddig mindig az 1-est használtuk Ugyanazok a műveletek érvényesek minden munkaterületen, mint az 1-esen. Ugyanaz az adatbázisfájl nem nyitható meg több munkaterületen!

A munkaterület azonosítója 1-től 10-ig számokkal A-tól J-ig betűvel az illető munkaterületen megnyitott adatbázisfájl nevével Például, ha az 1-es munkaterületen a TANULO.DBF-et nyitottuk meg, akkor az 1-es munkaterület azonosítási lehetőségei: 1; A; TANULO

Aktuális munkaterület Az a munkaterület, amit az adott pillanatban használunk. Eddig mindig az 1-es volt az aktuális.

Munkaterület váltása SELECT munkaterület_azonosító A képernyőn külön jel nem mutatja, hogy melyik az aktuális. Példa: USE TANULO (az egyes munkaterületen megnyitjuk a TANULO.DBF-et) SELECT 2 (átlépünk a 2-es munkaterületre) USE KONYV (a 2-es munkaterületen megnyitjuk a KONYV.DBF-et)

Munkaterület váltása Az 1-est a következőkkel aktiválhatjuk: SELECT 1; SELECT A; SELECT TANULO A 2-est a következőkkel aktiválhatjuk: SELECT 2; SELECT B; SELECT KONYV

Aktív adatbázisfájl Az aktuális munkaterületen megnyitott adatbázisfájl. A DISPLAY, LIST, GO, SKIP, APPEND, INSERT, EDIT, CHANGE, BROWSE, DELETE, RECALL, PACK, ZAP, ?, REPLACE, SUM, AVERAGE, COUNT, MODIFY STRUCTURE, DISPLAY STRUCTURE, LOCATE, CONTINUE, SORT, INDEX, SET INDEX, SET ORDER és REINDEX parancsok mindig az aktuális adatbázisra vonatkoznak.

Feladat Az 1-es munkaterületen nyisd meg a KONYV.DBF-et! A 2-es munkaterületen nyisd meg a TANULO.DBF-et! A 3-as munkaterületen nyisd meg az ISMEROS.DBF-et! A 4-es munkaterületen nyisd meg a POSTA DBF-et!

Összetett mezőnév Ha nem az aktív adatbázisfájl egy mezőjére hivatkozunk, akkor összetett mezőnevet kell használnunk. Adatbázis_neve->mezőnév TANULO->ATLAG (a TANULO.DBF ATLAG mezője) DISPLAY TANULO->ATLAG,CIM (nem aktuális adatbázis mezőiben lévő adatok kiíratása.)

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

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

I. A 3-as munkaterületen nyissuk meg az ISMEROS.DBF-et! SELECT 3 USE ISMEROS A 4-es munkaterületen nyissuk meg a POSTA.DBF-et! SELECT 4 USE POSTA

II. Tedd aktuálissá a 3-as munkaterületet, majd ott tedd aktuálissá az 5. Rekordot és írasd ki az IRSZ mező tartalmát SELECT 3 GO 5 DISPLAY IRSZ

III. Tedd aktuálissá a 4-es munkaterületet, hozz létre egy indexfáljt, amely biztosítja az irányítószámok szerinti növekvő sorrendet, majd keresd meg azt a rekordot, amelyben ugyanaz az irányítószám szerepel, mint az ISMEROS.DBF 5. rekordjában! INDEX ON SZAM TO IRREN FIND irányítószám

IV. Írasd ki az 5. Rekordban szereplő ismerősöd nevét, és hogy melyik településen lakik! DISPLAY ISMEROS->NEV, POSTA->TELEPULES

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. Megjegyzés: Az előző feladatban nem alakult ki tartós kapcsolat az adatbázisfájlok között.

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.

Az összekapcsolás menete A vezért és a szolgát is meg kell nyitni egy-egy munkaterületen. A szolgával kapcsolatban létre kell hozni egy indexfájlt, amely a kapcsoló-kifejezés szerinti növekvő sorrendet biztosítja. Ezt az indexfájlt főindexfájllá kell tenni. A vezért meg kell tenni aktív adatbázisfájlnak.

Az összekapcsolás menete SET RELATION TO kapcsoló-kifejezés INTO fájlnév kapcsoló-kifejezés: a vezér kapcsoló-kifejezése fájlnév: a szolga neve

Az előző feladat tartós kapcsolattal SELECT 3 USE ISMEROS.DBF SELECT 4 USE POSTA.DBF INDEX ON SZAM TO IRREN.NDX SET RELATION TO IRSZ INTO POSTA LIST NEV, POSTA->TELEPULES

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.

Több adatbázisfájl összekapcsolása Egy vezérhez egyidejűleg csak egy szolga kapcsolható A szolga azonban vezére lehet egy harmadik adatbázisfájlnak. Ily módon max. 8 adatbázisfájl kapcsolható össze. (Kétszer nem szerepelhet a láncban ugyanaz az adatbázisfájl)

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

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

Példa MERETK.DBF innen lehet megtudni, hogy melyik mértékegységkód melyik mértékegységet jelöli

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

PÉLDA Adatbázisfájlok megnyitása: SELECT 1 USE FORGALOM SELECT 2 USE ARU SELECT 3 USE MERTEK

Példa A FORGALOM és az ARU összekapcsolása SELECT 2 INDEX ON CIKK TO R1.NDX SELECT 1 SET RELATION TO F_CIKK INTO ARU

Példa Az ARU és a MERTEK összekapcsolása: SELECT 3 INDEX ON MEKOD TO R2.NDX SELECT 2 SET RELATION TO A_MEKOD INTO MERTEK

Példa Írassuk ki a napi forgalmi adatokat úgy, hogy az áru neve, értéke és a mértékegység neve is ki legyen írva: SELECT 1 LIST ARU->ARU_NEV, MENNYISEG*ARU->EGYSEGAR, MERTEK->ME_NEV

Példa A napi forgalom összértékének a kiszámítása: SELECT 1 SUM MENNYISEG*ARU->EGYSEGAR

Az összekapcsoltság megszüntetése A vezért aktívvá kell tenni SET RELATION TO

A függvény fogalma Olyan eszköz, amelynek segítségével bizonyos kifejezések értékéből új értéket képes előállítani. Az így nyert érték a függvényérték A függvényt a neve azonosítja

Függvény típusa Numerikus dátum karakteres logikai

Matematikai függvények

Abszolútérték ABS(n) ? ABS(-41) ? ABS(41) ? ABS(254-67*54)

Egészrész INT(n) ? INT(3.45) ? INT(-4.56) ? INT(3/7-65/3)

Négyzetgyök SQRT(n) ? SQRT(49) ? INT(SQRT(72))

Kerekítés ROUND ROUND(n1,n2) : az n1 számot n2 darab tizedesre kerekíti ? ROUND(12.78654,2) ? ROUND(12.78654,4) ? ROUND(5/3,1) ? ROUND(SQRT(72)+SQRT(95),1)

Maximum MAX MAX(n1,n2) :két szám közül kiválasztja a nagyobbikat

MIN MIN MIN(n1,n2) :két szám közül kiválasztja a kisebbiket.

Példa A példán kívül többet is érdemes fölvenni!!!!

Példa Mekkora a képcső átmérője (átlója)? ? SQRT(HOSSZ**2+SZEL**2) Az eredményt egy tizedes pontossággal adjuk meg! ? ROUND(SQRT(HOSSZ**2+SZEL**2),1)

Példa Minden olyan képcső típusát és átmérőjét írassuk ki, amelyből legalább 1000 darabot gyártottak! DISPLAY ALL TIPUS, SQRT(HOSSZ**2 +SZEL**2) FOR MENNY>=1000

Példa Írassuk ki az összes képcső típusát, átmérőjének egységére eső önköltségét és területének egységére eső önköltségét! DISPLAY ALL TIPUS, KOLT/SQRT( HOSSZ**2+SZEL**2), KOLT/(HOSSZ* SZEL)

Példa Írassuk ki az összes képcső típusát, valamint az átmérő egységére és a terület egységére eső önköltség közül a nagyobbikat! LIST TIPUS,MAX(KOLT/SQRT(HOSSZ **2+SZEL**2),KOLT/(HOSSZ*SZEL))

Példa Írassuk ki az összes képernyő típusát és az átmérő egységére, valamint a terület egységére eső önköltség különbségének abszolút értékét! DISPLAY ALL TIPUS,ABS(KOLT/SQRT( HOSSZ**2+SZEL**2)-KOLT/(HOSSZ* SZEL))

Példa Írassuk ki az összes képcső típusát és a hosszúság és szélesség arányának egészrészét! DISPLAY ALL TIPUS,INT(HOSSZ/ SZEL)

Karakterkezelő függvények szöveg szöveg szöveg

Balrész-függvény LEFT LEFT(c,n) Típusa: karakteres Kiválasztja a c karaktersorozat első n számú karakterét

Példa LEFT(”Albacomp”,4) értéke ”Alba” LEFT(”Magyarország”,3) értéke ”Mag”

Jobbrész-függvény RIGHT RIGHT(c,n) Típusa: karakteres Kiválasztja a c karaktersorozat utolsó n db karakterét

Példa RIGHT(”Albacomp”,4) értéke ”comp” RIGHT(”Magyarország”,6) értéke ”ország”

Középrész-függvény SUBSTR SUBSTR(c,n1,n2) Típusa: Karakteres Kiválaszt a c karaktersorozatból az n1-edik karaktertől kezdve n2 darabot.

Példa SUBSTR(”Albacomp”,2,3) értéke ”lba” SUBSTR(”Magyarország”,2,5) értéke ”agyar”

Sokszorozó függvény REPLICATE REPLICATE(c,n) Típusa: karakteres Megismétli a c karaktersorozatot n-szer

Példák REPLICATE(”ti”,4) értéke ”titititi” REPLICATE(”+”,12) értéke ”++++++++++++”

Kisbetű-függvény LOWER LOWER( c) Típusa: karakteres A c karaktersorozat nagybetűit kisbetűre változtatja (a magyar ékezetes karakterek kivételével)

Példa LOWER(”Kovács Éva”) értéke ”kovács Éva” LOWER(”Magyar”) értéke ”magyar”

Nagybetű-függvény UPPER UPPER( c) Típusa: karakteres Értéke: a c karaktersorozat kisbetűit nagybetűkre cseréli (a magyar ékezetes betűk kivételével)

Példák UPPER(”elégséges”) értéke ”ELéGSéGES” UPPER(”Magyar”) értéke ”MAGYAR”

Bal oldali szóközöket levágó függvény LTRIM LTRIM( c) Típusa: karakteres a c karaktersorozat elejéről levágja a szóközöket LTRIM(” Bartók Béla”) értéke ”Bartók Béla”

Jobb oldali szóközöket levágó függvény RTRIM RTRIM( c) Típusa: karakteres a c karaktersorozat végéről levágja a szóközöket RTRIM(”Kodály Zoltán ”) értéke ”Kodály Zoltán”

Hossz-függvény LEN LEN( c) Típusa: numerikus A c karaktersorozat hossza

Példák LEN(”Albacomp”) értéke 8 LEN(”Magyarország”) értéke 12

ASCII kód függvény ASC ASC( c) Típusa: Numerikus A c karaktersorozat első karakterének ASCII kódja ASC(”alma”) értéke 65 ASC(”medve”) értéke 109

Karaktert adó függvény CHR CHR(n) Típusa: karakteres Az n számhoz, mint ASCII kódhoz tartózó karakter CHR(65) értéke ”a”

Karakterkereső függvény AT AT(c1,c2) Típusa: numerikus az a szám, amely megmutatja, hogy a c1 karaktersorozat hányadik karaktertől kezdve található meg a c2 karaktersorozatban. Ha nincs benne, akkor az értéke 0.

Példák AT(”kun”,”Kiskunlacháza”) értéke 4

Szóközöket adó függvény SPACE SPACE(n) Típusa: karakteres SPACE(n) ugyanazt jelenti, mint REPLICATE(” ”,n)

Betűvizsgáló függvény ISALPHA ISALPHA( c) Típusa: logikai igaz, ha c karaktersorozat első karaktere betű, egyébként hamis ISALPHA(”Magyarország”) értéke .T. ISALPHA(”1965”) értéke .F.

Karakterkezelő függvények alkalmazása

Példa

Példák Írasd ki az első rekordban szereplő elem nevének hosszát! DISPLAY LEN(TRIM(NEV)) Írasd ki a 6. rekord nevének első 6 betűjét! DISPLAY LEFT(NEV,6)

Példák Írassuk ki az 5. rekord nevét csupa nagybetűvel! DISPLAY UPPER(NEV) Jelenítsük meg a harmadik rekord nevét és vegyjelét úgy, hogy közöttük pontosan három szóköz legyen! DISPLAY TRIM(NEV)+SPACE(3)+TRIM (VEGYJEL)

Példák Írassuk ki azoknak az elemeknek a nevét és vegyjelét, amelyek neve ”um” végződésű! DISPLAY NEV,VEGYJEL FOR AT(”um”,NEV)>0 Írassunk a képernyőre 80 db * karaktert! REPLICATE(”* ”,80)

Feladatok Írasd ki azoknak az elemeknek a nevét, vegyjelét és rendszámát, amelyek neve 7 karakternél hosszabb! Írasd ki az összes elem nevét és rendszámát úgy, hogy a nevüknek csak az első 5 betűje szerepeljen!

Feladatok Írasd ki csupa nagybetűvel azoknak az elemeknek a nevét, amelyeknek a rendszáma 10-nél nagyobb! Írasd ki a 10-nél kisebb rendszámú elemek nevét és vegyjelét úgy, hogy közöttük pontosan 2 szóköz legyen!

Dátumkezelő függvények

A mai dátumot megadó függvény DATE DATE() Típusa: Dátum jellegű A mai dátumot adja meg.

Évszám-függvény YEAR YEAR(d) Típusa: Numerikus A d dátumban szereplő évszámot adja eredményül.

Hónap-függvény MONTH MONTH(d) Típusa: Numerikus A d dátumban szereplő hónap sorszámát adja

Nap-függvény DAY DAY(d) Típusa: Numerikus A d dátumban szereplő nap sorszámát adja

DOW DOW DOW(d) Típusa: Numerikus A d dátum a hét hányadik napja volt?

Példa Írassuk ki a dolgozói nyilvántartásból azokat, akik 1965-ben születtek! DISPLAY ALL NEV FOR YEAR(SZUL_DATUM)=1965 Írassuk ki az összes adatát a 35 évnél idősebbeknek! DISPLAY ALL FOR DATE()-SZUL_DATUM>35*365

Példa Írassuk ki azoknak a nevét, akik február 20-án születtek! DISPLAY ALL NEV FOR MONTH(SZUL_DATUM)=2.AND.DAY( SZUL_DATUM)=20 Írassuk ki azokat, akik szerdán születtek! DISPLAY ALL NEV FOR DOW(SZUL_DATUM)=4

Feladat Írasd ki azokat, akik a Halak jegyében születtek (február 20. és március 21. között)! Számítsd ki, hogy a 40 évnél idősebbek mennyit keresnek összesen! Számítsd ki, hogy a decemberi születésűeknek mennyi az átlagos alapbére! Számláld meg, hogy hányan születtek vasárnap!

Választó függvény IIF IIF(l,t1,t2) Típusa: t1 és t2 típusával megegyező Ha l igaz, akkor az értéke t1, ha hamis, akkor t2

Típusváltoztató függvények A kifejezés értékéből más típusú konstanst tudnak létrehozni. Akkor alkalmazzuk, ha olyan műveletet szeretnénk végrehajtani, ami az adott típussal nem lehetséges.

STR STR STR(n1,n2,n3) Az n1 numerikus értéket szöveggé alakítja, n2 hosszon, n3 tizedesjeggyel. n2 alapértéke 10 n3 alapértéke 0

Példa STR(16.78,8,4) értéke ” 16.7800” STR(16.78,5) értéke ” 17”

VAL VAL( c) A c karaktersorozatot számmá alakítja csak akkor használandó, ha a c-ben csak számjegyek, előjel és tizedespont található VAL(”15.78”) értéke 15.78

CTOD CTOD( c) A c karaktersorozatot, ha lehet dátummá alakítja CTOD(”1965.02.21”) értéke 1965. február 21-i dátum

DTOC DTOC(d) A d dátumot karaktersorozattá változtatja A CTOD függvény inverze.

DOS parancs végrehajtatása RUN DOS_PARANCS RUN MD ADATOK

VÉGE