| Bevezetés | 11 |
| Néhány szó a könyvről | 12 |
| Meghatározások | 14 |
| Foglalt szavak | 14 |
| Adatbázisok | 15 |
| Bázistáblázatok | 15 |
| Oszlopok | 16 |
| Sorok | 17 |
| Mezők | 17 |
| Látványok | 17 |
| Jelölések és megállapodások | 16 |
| Párbeszédes SQL, az SQL utasítások bevitele | 18 |
| Beépített (eljárásos) SQL, SQL parancsokat tartalmazó programok futtatása | 18 |
| A csúcsos zárójelek jelentése | 18 |
| A szögletes zárójelek jelentése | 19 |
| A három pont jelentése | 19 |
| Az SQL parancsok ALL CAPS megjelenítésben | 19 |
| Táblázatnevek, oszlopnevek | 19 |
| A ferde törtvonal jelentése | 20 |
| A pontosvessző jelentése | 20 |
| Eredménytáblázatok | 20 |
| Az adatbázis objektumai | 21 |
| A céllista | 21 |
| Navigációs billentyűk | 21 |
| A dBASE IV és a dBASE SQL összehasonlítása | 23 |
| SQL táblázatok - dBASE file-ok | 24 |
| SQL és dBASE katalógusok | 24 |
| SQL és dBASE látványok | 25 |
| SQL és dBASE indexek | 26 |
| A dBASE és az SQL programok | 26 |
| Következtetések | 28 |
| Adatbázisok létrehozása, módosítása és törlése (CREATE, ALTER, DROP). Objektumok: adatbázisok, táblázatok, látványok, indexek | 29 |
| Hogyan hozzunk létre egy adatbázist? | 29 |
| A START DATABASE parancs | 30 |
| A STOP DATABASE parancs | 30 |
| A DROP DATABASE parancs | 31 |
| A SHOW DATABASE parancs | 31 |
| Hogyan szerkeszthetünk táblázatokat? | 32 |
| Az oszlopok nevének megválasztása | 34 |
| Hogyan módosíthatjuk a táblázatokat? | 34 |
| Hogyan törölhetünk egy táblázatot az adatbázisból? | 35 |
| Látványok | 36 |
| Miért hozunk létre látványokat? | 36 |
| Látványok létrehozása | 37 |
| Látványok törlése | 39 |
| Szinonimák létrehozása | 40 |
| Szinonimák törlése | 41 |
| Indexek | 42 |
| Indexek létrehozása | 42 |
| Indexek törlése | 43 |
| Operátorok, klauzák, kifejezések és elsőbbségi szabályok az SQL parancsokban | 45 |
| Aritmetikai műveletek | 46 |
| Összehasonlító műveletek | 48 |
| Logikai műveletek | 48 |
| Az AND logikai művelet | 49 |
| Az OR logikai művelet | 50 |
| Az AND és az OR műveletek együttes alkalmazása | 50 |
| A NOT logikai művelet alkalmazása | 53 |
| A logikai műveletek elsőbbségi szabályai | 53 |
| Klauzák | 54 |
| A FORM klauza | 54 |
| A WHERE klauza | 55 |
| A GROUP BY klauza | 63 |
| A HAVING klauza | 65 |
| Az ORDER BY klauza | 66 |
| A SAVE TO TEMP klauza | 68 |
| Kifejezések | 69 |
| Adatkezelés: adatimport, -export, beszúrás, javítás, törlés | 71 |
| Adatok importálása más adatbázisokból | 71 |
| Adatok exportálása más adatbázisokba | 72 |
| Tranzakciós eljárások | 73 |
| Új adatsor beillesztése az adatbázisba | 75 |
| Részsor beillesztése | 77 |
| Több sor vagy több részsor beillesztése | 78 |
| Adatok beillesztése látványokba | 79 |
| Egy táblázat vagy egy adatsor módosítása | 80 |
| Látvány módosítása | 82 |
| Sorok törlése táblázatból (vagy látványból) | 83 |
| Sorok törlése látványból | 84 |
| Lekérdezések és mádodlagos lekérdezések: a SELECT használata | 85 |
| Egyszerű lekérdezés | 88 |
| Meghatározott sorok lekérdezése | 89 |
| Lekérdezés több feltétellel | 91 |
| Az AND operátor használata lekérdezésekben | 91 |
| Az OR operátor használata lekérdezésekben | 92 |
| Az AND és az OR kombinációja lekérdezésekben | 93 |
| A BETWEEN...AND... használata lekérdezésekben | 94 |
| Lekérdezés a LIKE klauzával | 95 |
| Lekérdezés az IN klauzával | 95 |
| Lekérdezés a NOT operátorral | 96 |
| Másodlagos lekérdezések | 96 |
| Másodlagos lekérdezés az IN vagy a NOT IN operátorral | 98 |
| Másodlagos lekérdezés az ANY vagy az ALL operátorral | 98 |
| Korrelált másodlagos lekérdezések | 100 |
| Másodlagos lekérdezés aliasnév használatával | 101 |
| Másodlagos lekérdezés az EXISTS és a NOT EXISTS kulcsszóval | 102 |
| Többszörös másodlagos lekérdezések | 103 |
| Összesítő függvények, memóriaváltozók és dBASE IV függvények | 104 |
| Összesítő függvények: AVERAGE, COUNT, MIN, MAX, SUM | 104 |
| Az AVG függvény | 106 |
| A COUNT (DISTINCT -oszlopnevek-) függvény | 107 |
| A COUNT (*) függvény | 108 |
| A SUM függvény | 108 |
| A MAX és a MIN függvény | 108 |
| Memóriaváltozók | 109 |
| Memóriaváltozó-tömb | 110 |
| PUBLIC és PRIVATE memóriaváltozók | 111 |
| A CLEAR MEMORY, a RELEASE, a SAVE és a RESTORE parancs | 112 |
| Memóriaváltozók használata a WHERE klauzával | 113 |
| dBASE függvények dBASE IV SQL üzemmódban | 114 |
| Aritmetikai függvények | 114 |
| A dátum- és időfüggvények | 116 |
| Szövegkezelő függvények | 116 |
| A SOUNDEX függvény | 118 |
| Tranzakciós függvények | 119 |
| Záró megjegyzés | 119 |
| Műveletek a táblázatokkal | 120 |
| Vetítés | 121 |
| Halmazműveletek | 121 |
| Táblázatok kapcsolása (join) | 125 |
| Egyenlőségi kapcsolás (equijoin) | 126 |
| Természetes kapcsolás (natural join) | 127 |
| Thétakapcsolás | 129 |
| Önkapcsolás | 130 |
| Az adatok biztonsága és integritása | 132 |
| A dBASE IV PROTECT segédprogramok hatása az SQL műveletekre | 133 |
| Az SQL adatbázis-adminisztrátor | 133 |
| SQL biztonság és integritás | 134 |
| A GRANT parancs | 135 |
| A táblázatokra és látványokra vonatkozó jogkörök korlátozása | 137 |
| A PUBLIC kulcsszó | 137 |
| A látványok mint a biztonság eszközei | 138 |
| A DBDEFINE parancs használata | 138 |
| A REVOKE parancs, a jogok törlése | 139 |
| Az adatok titkosítása | 140 |
| Befagyasztás | 141 |
| Rendszerkatalógus-táblázatok | 142 |
| A rendszerkatalógusok módosítása: a RUSTATS parancs | 143 |
| A rendszerkatalógusok módosítása: a DBCHECK parancs | 145 |
| A rendszerkatalógusok módosítása: a DBDEFINE parancs | 146 |
| Tranzakciós feldolgozás | 147 |
| Összefoglalás | 149 |
| SQL a dBASE IV-ben | 150 |
| Programvezérlő parancsok | 151 |
| A DO parancs | 151 |
| A PARAMETERS parancs | 151 |
| A PROCEDURE parancs | 152 |
| Az IF, ELSE, ENDIF parancs | 152 |
| A DO WHILE parancs | 153 |
| A DO CASE parancs | 154 |
| A RETURN parancs | 154 |
| A RETRY és az ON parancs | 155 |
| A RUN parancs | 156 |
| A képernyőműveleteket vezérlő parancsok | 156 |
| A @...SAY...GET parancs | 156 |
| @...TO | 158 |
| Adatbevitel a billentyűzetről | 159 |
| Az ACCEPT parancs | 159 |
| Az INPUT parancs | 159 |
| A WAIT parancs | 159 |
| Néhány SET parancs | 160 |
| SET SQL | 160 |
| SET STEP | 161 |
| SET TALK | 161 |
| SET ECHO | 161 |
| SET DEBUG | 162 |
| SET EXACT | 162 |
| SET BELL | 162 |
| SET CONFIRM | 163 |
| SET CONSOLE | 163 |
| SET ESCAPE | 163 |
| SET HISTORY | 163 |
| SET INTENSITY | 163 |
| SET PRECISION | 164 |
| SET PROCEDURE | 164 |
| SET TRAP ON/OFF | 164 |
| Az alkalmazó által definiált függvények | 165 |
| Programfile-ok szerkesztése | 166 |
| A hibakereső (debugger) | 167 |
| A dBASE IV-be beépített SQL | 169 |
| Az SQLCODE és SQLCNT rendszerváltozó | 169 |
| Beépített SQL kurzorok nélkül | 170 |
| A kurzorok | 174 |
| A DECLARE CURSOR és az OPEN parancs | 176 |
| A FETCH és a CLOSE parancs | 176 |
| Egy egyszerű program a CURSOR alkalmazására | 178 |
| A DECLARE FOR UPDATE és az UPDATE WHERE CURRENT OF parancs | 181 |
| A DELETE WHERE CURRENT OF parancs | 182 |
| Memóriaváltozók használata a DECLARE CURSOR SELECT parancsban | 183 |
| Hibakezelés | 185 |
| Egynél több CURSOR alkalmazása | 186 |
| Az ORDER BY klauza alkalmazása a kurzorokban | 191 |
| Az integritás ellenőrzése a kurzorral | 191 |
| Egy CURSOR-program a duplázott sorok törlésére | 193 |
| Az adatbázis-tervezés néhány elméleti kérdése | 198 |
| A kulcsok és a normalizálás | 199 |
| Az első normál forma | 201 |
| Funkcionális függőség | 201 |
| Prím attribútum, teljes függőség, második normál forma | 203 |
| Tranzitív függőség, harmadik normál forma | 204 |
| A Boyce-Codd normál forma | 206 |
| A normál formák értelmezése | 207 |
| A normál formák létrehozása | 208 |
| A függelék | 211 |
| Az SQL hibaüzenetei | 211 |
| Az SQL szintaktikai hibaüzenetei | 211 |
| Az SQL futás közbeni (RUN-TIME) hibaüzenetei | 232 |
| B függelék | 234 |
| A dBASE IV SQL módban használható dBASE IV parancsok | 234 |
| C függelék | 244 |
| A dBASE IV SQL módban használható dBASE IV függvények | 244 |
| D függelék | 250 |
| Szómagyarázat | 250 |
| Tárgymutató | 259 |