Inhoud. Voorwoord 1 Belangrijkste kenmerken van dit boek 1 De opzet van dit boek 1 Over de auteurs 2 Woord van dank 2

Vergelijkbare documenten
Inhoud. Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.

Databases - Inleiding

DBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen.

1. Inleiding Inleiding SQL Inleiding Database, databaseserver en databasetaal Het relationele model...

12. Meer dan één tabel gebruiken en sub-queries

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.

Databases en SQL Foundation (DBSQLF.NL)

Datamodelleren en databases 2011

EXIN Databases en SQL Foundation

Toon TITEL, JAAR en PLATVORM van GAMES die voor het jaar 2000 uitkwamen op Nintendo 64

Informatie & Databases

Introductie (relationele) databases

Inleiding Databases en Data Base Management Systems Tabellen Wat is SQL?... 5

Query SQL Boekje. Fredrik Hamer

Hoofdstuk: 1 Principes van databases

[TOETS SQL INLEIDING]

Puzzelen met SQL: Fileleed

Data Manipulation Language

F. TRUYEN - Informatiekunde QBE. MS Access

SQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC

Vragen hoofdstuk 1: Resultaat

Puzzelen met SQL 38. De Muzieklijst, deel 2 PUZZELEN MET SQL

Structured Query Language

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: Groep TDI 1

Data Definition Language

SQL.

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311

Les S-02: Meer geavanceerde SQL-instructies

SQL & Datamodelleren

SQL Aantekeningen 3. Maarten de Rijke 22 mei 2003

2 Specificatie In deze tabel staat voor welk crebotraject de leereenheid is gemaakt Crebotraject code: 95311

SQL datadefinitietaal

Normaliseren versie 1.1

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster

SQL en XML. XML schema s & DMO. Entiteitsklasse en attribuut. SQL en XML. Datamodellering Schema een ruim begrip (zie Møller, p.

Sparse columns in SQL server 2008

SQL. Datamodellering 2008

SQL. Wat is SQL? Geschiedenis SQL SQL DMO Datamodellering 2008

Les 2 Eenvoudige queries

Informatie verwerking en databases RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE SQL INSERT SQL UPDATE SQL DELETE...

Zelftest SQL Workshop

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Anatomie van een databank

Elfde-Liniestraat Hasselt Schooljaar TINFO POKER GAME Oracle Scripts

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database.

EXIN Databases en SQL Foundation

Databanken - les 2.

voorbeeldexamen I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006

Databanken - les 2.

Zelftest DB2 for z/os basiscursus

Versieperikelen. Bijlage C

Zelftest SQL Workshop

Het omzetten van een ER-diagram naar SQL

ER-modeling. Datamodellering Wat is ER-modeling?

ER-modeling. Wat is ER-modeling? ERD & relationeel model. ER-benadering DMO Datamodellering 2008

SQL & Relationele datamodellen in interactieve media

SQL Developer Data Modeler

Guido Geurts Mark Bernaerts

Puzzelen met SQL DBA. De muzieklijst, deel 1. De tabellen De tabellen die we gaan gebruiken in deze puzzel zijn weergegeven in afbeelding 1.

= > >= < <= BETWEEN IS NULL IS NOT NULL

Puzzelen met SQL DEV. Crash SQL Investigation

Relationele databases

6. Het maken van een database

Module 1 Programmeren

Database Structuur via menus

COMPUTERWOORDEN.NL SQL - basis

Relationele Databases 2002/2003

Relationele Databases 2002/2003

Zelftest Oracle basiscursus

Na bestudering van dit hoofdstuk, moet je tot het volgende in staat zijn:

Les 11 : Basis SQL (deel2).

Groepswerk Technieken voor Datamodellering

Data Handling Ron van Lammeren - Wageningen UR

Digitaal Staatsexamen VWO 2010

Tien manuals voor PL/SQL ontwikkelaar

Les S-01: De basisbeginselen van SQL

SQL: query taal met. woorden. ISO SQL: Structured Query Language. de SQL basis query structuur. voorbeeld: doel: intuitieve query taal

PROGRAMMA Vak: informatica..

Relationele databanken

1. * Database worden vaak gebruikt in Client-Server architectuur.

Thinking of development

Oracle Database Vault

Secure Application Roles

Structured Query Language (SQL)

PL/SQL. Declaraties van variabelen. Structuur PL/SQL is een blok-georiënteerde taal: Toekenningen

Integriteitsbewaking bij een relationele database

DATAMODELLERING ER DIAGRAM

Querytraining HvA. Basistraining query's bouwen in SIS. Versie 1.0 Datum Auteur Eppo Drenth - CFB SIS HvA Mark van der Molen CFB SIS UvA

Relationele database. Het relationele model

ISO SQL: Structured Query Language

Een Data Driven toepassing op basis van Visual Objects en SQL Server

11. Het selecteren van gegevens deel II

Opleiding Fullstack Developer.

Spiekboekje Excel Query SQL

FileMaker 15. Naslaggegevens voor SQL

Oracle Rolling Upgrades met SharePlex Systems Consultant Quest Software Nederland 9/

NHibernate als ORM oplossing

Computerclub Volwassenen, Jeugd en Informatica vzw

FileMaker 13. Naslaggegevens voor SQL

8. De invoer van gegevens

Transcriptie:

v Voorwoord 1 Belangrijkste kenmerken van dit boek 1 De opzet van dit boek 1 Over de auteurs 2 Woord van dank 2 1 Introductie: data en informatie 3 1.0 Wat leer je in dit hoofdstuk? 3 1.1 Verschil tussen gegevens en informatie 4 Gegevens en informatie 4 1.2 Kort overzicht van de geschiedenis van computers en databases 6 Precomputertijdperk 7 Intrede computertijdperk 8 Snelle ontwikkelingen aan het einde van de twintigste eeuw 9 21e eeuw 10 1.3 Datamodellering 11 Database Development Process 11 1.4 Installatie van Oracle en de Oracle Application Express (Apex) 15 Installatie Oracle-ontwikkelomgeving 17 1.5 Starten Oracle Application Express en gebruik 17 Gebruik van het HR-schema 20 1.6 Samenvatting 25 1.7 In dit hoofdstuk geïntroduceerde termen 26 1.8 Relatie Engelse-Nederlandse termen 26 2 Datamodellering 27 2.0 Wat leer je in dit hoofdstuk? 27 2.1 Conceptuele modellen 28 Conceptueel model 28 2.2 Elementen van het conceptueel model 29 Entiteit 29 Attribuut 29 Instantie 29 Entiteit en instanties 30 Attributen 31 Unique identifiers 33 2.3 ERD s 34 ERD 34

vi 2.4 Entiteiten en attributen binnen een ERD 35 Entiteiten 36 2.5 Introductie Oracle SQL Developer Data Modeler 37 2.6 Relaties binnen een ERD 44 2.7 Relaties en ERDish 46 Scenario 1: één-op-één-relatie 46 Scenario 2: één-op-veel-relatie 49 Scenario 3: één-op-één-relatie 50 Scenario 4: één-op-veel-relatie 51 Scenario 5: veel-op-veel-relatie 53 2.8 Matrixdiagram 55 2.9 Datatypen in Oracle 60 Character (karakter) datatypes 60 Number values (getallen) 60 Date and time values (datum- en tijdwaarden) 60 Binary values (binaire waarden) 60 DATE-TIME-datatypen 61 TIMESTAMP 61 TIMESTAMP WITH [LOCAL] Time Zone 61 TIMESTAMP WITH LOCAL TIME ZONE 61 INTERVAL-datatypen 62 2.10 Samenvatting 63 2.11 In dit hoofdstuk geïntroduceerde termen 63 2.12 Relatie Engelse-Nederlandse termen 64 3 Relaties binnen een ERD 65 3.0 Wat leer je in dit hoofdstuk? 65 3.1 Business rules 67 Structural business rules 68 Procedural business rules 68 3.2 Relationship transferability 69 3.3 Verschillende typen relaties 71 Eén-op-veel-relaties (1:M) 71 Veel-op-veel-relaties (M:M) 72 Eén-op-één-relaties (1:1) 73 Redundant relationships 74 3.4 M:M-relaties oplossen in het ERD 76 3.5 Unique identifiers 80 Barred relationships 81 Barred relationships en intersection entities 82 Artificial UID 84 Candidate UID s 86 3.6 Normaliseren: inleiding en eerste normaalvorm (1NV) 87 Nulde normaalvorm (0NV) niet-genormaliseerde gegevens 88

vii Eerste normaalvorm (1NV) 90 Tweede normaalvorm (2NV) 94 Derde normaalvorm (3NV) 98 3.7 Samenvatting 103 3.8 In dit hoofdstuk geïntroduceerde termen 103 3.9 Relatie Engelse-Nederlandse termen 104 4 Mapping: van conceptueel model naar fysiek model 105 4.0 Wat leer je in dit hoofdstuk? 105 4.1 Introductie: relationeel databaseconcept 106 Relationele database 106 SQL-statements 107 Primary key 108 Foreign key 110 Column integrity 112 Data integrity 113 4.2 Basic mapping: het transformatieproces 114 Relationele tabellen 114 Mapping 115 Tabeldiagram 119 Naming conventions 120 Short names 120 Naamrestricties 122 4.3 Mapping met de SQL Developer Data Modeler 125 4.4 CREATE TABLE 127 CREATE TABLE syntaxis 128 Een tabel aanmaken met behulp van de SDDM 128 Omschrijving van een tabel 135 4.5 Objecten fysieke database 139 External tables 139 Data Dictionary 139 Database Schema Objects 141 4.6 In dit hoofdstuk geïntroduceerde termen 143 4.7 Relatie Engelse-Nederlandse termen 145 5 Data in tabellen 147 5.0 Wat leer je in dit hoofdstuk? 147 5.1 Manipuleren van data 148 INSERT INTO 148 5.2 Anatomie van een SQL-statement 149 Keywords 152 Clauses 153 Afsluiting statements 153 5.3 INSERT INTO 153

viii 5.4 SELECT statement 160 Kopiëren van tabellen 162 5.5 Het DESCRIBE statement nader bekeken 166 5.6 Het INSERT INTO statement nader bekeken 166 5.7 In dit hoofdstuk geïntroduceerde termen 168 5.8 Relatie Engelse-Nederlandse termen 168 6 SELECT statements in relationele databases 169 6.0 Wat leer je in dit hoofdstuk? 169 6.1 DBMS 171 Relationele databases 171 Data manipulation language (DML) 172 Data definition language (DDL) 172 Transaction control language (TCL) 173 Data control language (DCL) 173 6.2 SELECT statement 173 Arithmetic operations (rekenkundige bewerkingen) 178 Null values 178 Aliassen 179 6.3 Kolommen, characters en rijen 181 Describe 181 Concatenatie 182 Literal values 183 DISTINCT 184 6.4 Het aantal rijen in de output beperken 186 WHERE 186 Comparison operators 188 IS NULL, IS NOT NULL 191 6.5 Logische operatoren en bewerkingsvolgorde 192 Logische operator 192 AND 192 OR 193 NOT 195 Volgorde in gebruik van operatoren 196 6.6 Sorteren van rijen 198 ORDER BY 199 6.7 Applicaties 203 6.8 Samenvatting 204 6.9 In dit hoofdstuk geïntroduceerde termen 204 6.10 Relatie Engelse-Nederlandse termen 206

7 Functies 207 7.0 Wat leer je in dit hoofdstuk? 207 7.1 Introductie functies 209 Single-row-functies 210 Multiple-row-functies 210 7.2 Group functions 211 DISTINCT 215 NVL-functie 217 7.3 Case-karakter-functies 218 Upper case en lower case 218 UPPER(string) en LOWER(string) 219 INITCAP(string) 221 7.4 Karaktermanipulatie-functies 221 CONCAT(string, string) 222 SUBSTR(string, positie, lengte) 222 LENGTH(string) 223 INSTR(string, string) 223 LPAD(string, getal, karakter) 224 RPAD(string, getal, karakter) 224 REPLACE(string, string, string) 224 7.5 Nummerfuncties 225 ROUND(getal) 226 TRUNC(getal) 226 MOD(getal, getal) 227 7.6 Datumfuncties 228 SYSDATE 228 MONTHS_BETWEEN(date, date) 229 NEXT_DAY(date, dag) 230 LAST_DAY(date) 230 ADD_MONTHS(date, aantal maanden) 231 ROUND() en TRUNC() 231 7.7 TO_DATE()-, TO_CHAR()- en TO_NUMBER()-functies 232 DATE 232 Conversie van DATE naar karakterstring 233 Conversie van karakterstring naar DATE 235 Het verschil tussen het RR en YY format 235 Conversie van getal naar karakterstring 236 Conversie van karakterstring naar getal 237 De volgorde waarin functies worden uitgevoerd 238 7.8 NULL-functies 239 NVL()-functie 239 NVL2()-functie 241 ix

x 7.9 Conditionele functies en expressie 241 NULLIF()-functie 242 CASE-expressie 242 DECODE-functie 243 7.10 Samenvatting 244 7.11 In dit hoofdstuk geïntroduceerde termen 245 7.12 Relatie Engelse-Nederlandse termen 246 8 Joins 247 8.0 Wat leer je in dit hoofdstuk? 247 8.1 Inner joins 248 Natural join 249 De natural join toegepast 253 Inperking van de output 255 Join tussen meerdere tabellen 256 USING clause 257 Tabel-alias 257 WHERE in combinatie met USING clause 258 ON clause 259 Joining van meerdere tabellen 261 Oracle Proprietary joins 261 Equi join 263 Aliassen 264 ANSI cross join 266 Cartesian product join 268 8.2 Non-equi joins 270 Oracle Proprietary non-equi join 270 8.3 Outer joins 274 Left outer join 274 Right outer join 276 Full outer join 277 Oracle Proprietary outer joins 279 8.4 Self joins 282 8.5 Samenvatting 284 8.6 In dit hoofdstuk geïntroduceerde termen 284 8.7 Relatie Engelse-Nederlandse termen 285 9 Groeperen van resultaten en subqueries 287 9.0 Wat leer je in dit hoofdstuk? 287 9.1 GROUP BY en HAVING clauses 288 GROUP BY 288 GROUP BY in SELECT 290 GROUP BY clause 290 COUNT 292

xi WHERE clause 292 Groups binnen GROUPS 293 Nesting goup functions 294 HAVING 294 ROLLUP 296 9.2 Subqueries 297 Subquery-voorbeelden 298 9.3 Single-row subqueries 301 Subqueries met verschillende tabellen 301 Subquery en null 304 Group functions in subqueries 304 Subqueries in de HAVING clause 305 9.4 Multiple-row subqueries 306 Query comparison 306 IN, ANY en ALL 306 IN 308 ANY 308 ALL 309 Null values 311 GROUP BY en HAVING 312 Het belang van het bepalen van het type subquery 315 9.5 Multiple-column subqueries 317 9.6 Samenvatting 318 9.7 In dit hoofdstuk geïntroduceerde termen 319 9.8 Relatie Engelse-Nederlandse termen 319 10 DML en DDL statements 321 10.0 Wat leer je in dit hoofdstuk? 321 10.1 Data manipulation language (DML) statements 322 UPDATE 322 DELETE 327 DEFAULT 329 MERGE 330 10.2 Data Definition langugage (DDL) statements 332 ALTER TABLE 332 ADD 332 MODIFY 333 DROP 334 SET UNUSED 335 10.3 DROP TABLE 336 DROP TABLE statement 336 FLASHBACK TABLE 336 RENAME 337

xii 10.4 TRUNCATE 338 COMMENT ON TABLE 338 10.5 Flashback query 339 10.6 MACOR 340 Bedrijfsomschrijving Macor 340 10.7 Samenvatting 345 10.8 In dit hoofdstuk geïntroduceerde termen 345 10.9 Relatie Engelse-Nederlandse termen 345