Databases Samenvatting

Maat: px
Weergave met pagina beginnen:

Download "Databases Samenvatting"

Transcriptie

1 Databases Samenvatting Dieter Castel Jonas Devlieghere Karel Domin Giel Dops Dennis Frett Kevin Fockaert Kenneth Geets John Gybels Laurent Janssens Ben Lefevere 13 januari 2015

2 Inhoudsopgave 1 Introduction to Databases Introduction An Example Characteristics of the Database Approach Self-Describing Nature of a Database System Insulation between Programs and Data, and Data Abstraction Support of Multiple Views of the Data Sharing of Data and Multiuser Transaction Processing Actors on the Scene Database Administrators Database Designers End Users System Analysts and Application Programmers (Software Engineers) Workers behind the Scene Advantages of Using the DBMS Approach Controlling Redundancy Restricting Unauthorized Access Providing Persistent Storage for Program Objects Providing Storage Structures and Search Techniques for Efficient Query Processing Providing Backup and Recovery Providing Multiple User Interfaces Representing Complex Relationships among Data Enforcing Integrity Constraints Permitting Inferencing and Actions Using Rules Additional Implications of Using the Database Approach When Not to Use a DBMS Overview of Database Languages and Architectures Data Models, Schemas, and Instances Categories of Data Models Schemas, Instances and Database State Three-Schema Architecture and Data Independence The Three-Schema Architecture Data Independence Database Languages and Interfaces DBMS Languages DBMS Interfaces The Database System Environment DBMS Component Modules

3 2.4.2 Database System Utilities Tools, Application Environments, and Communications Facilities Centralized & Client/Server Architectures for DBMSs Centralized DBMSs Architecture Basic Client/Server Architectures Two-Tier Client/Server Architectures for DBMSs Three-Tier and n-tier Architectures for Web Applications Classification of Database Management Systems The Basic (Flat) Relational Model Relational Model Concepts Domains, Attributes, Tuples, and Relations Characteristics of Relations Relational Model Notation Relational Model Constraints and Relational Database Schemas Domain Constraints Key Constraints and Constraints on NULL values Relational Databases and Relational Database Schemas Integrity, Referential Integrity and Foreign Keys Other Types of Constraints Update Operations, Transactions and Dealing with Constraint Violations The Insert Operation The Delete Operation The Update Operation The Transaction Concept SQL: Data Definition, Constraints, and Basic Queries and Updates SQL Data Definition and Data Types Schema and Catalog Concepts in SQL The CREATE TABLE Command in SQL Attribute Data Types and Domains in SQL Specifying Constraints in SQL Specifying Attribute Constraints and Attribute Defaults Specifying Key and Referential Integrity Constraints Giving Names to Constraints Specifying Constraints on Tuples Using CHECK Basis Retrieval Queries in SQL The SELECT-FROM-WHERE Structure of Basic SQL Queries Ambiguous Attribute Names, Aliasing, Renaming, and Tuple Variables Unspecified WHERE Clause and Use of the Asterisk Tables as Sets in SQL Substring Pattern Matching and Arithmetic Operators Ordering of Query Results Discussion and Summary of Basic SQL Retrieval Queries INSERT, DELETE, and UPDATE Statements in SQL The INSERT Command The DELETE Command The UPDATE Command Additional Features of SQL

4 5 SQL: Advanced Queries, Assertions, Triggers, and Views More Complex SQL Retrieval Queries Comparisons Involving NULL and Three-Valued Logic Nested Queries, Tuples, and Set/Multiset Comparisons Correlated Nested Queries The EXISTS and UNIQUE Functions in SQL Explicit Sets and Renaming of Attributes in SQL Joined Tables in SQL and Outer Joins Aggregate Functions in SQL Grouping: The GROUP BY and HAVING Clauses Specifying Constraints as Assertions and Actions as Triggers Specifying General Constraints as Assertions in SQL Introduction to Triggers in SQL Views (Virtual Tables) in SQL Concept of a View in SQL Specification of Views in SQL View Implementation, View Update, and Inline Views Schema Change Statements in SQL The DROP Command The ALTER Command Formal Relational Languages: The Algebra and Calculus Unary Relational Operations: SELECT & PROJECT The SELECT Operation The PROJECT Operation Sequences of Operations and the RENAME Operation Relational Algebra Operations from Set Theory The UNION, INTERSECTION, and MINUS Operations The CARTESIAN PRODUCT (CROSS PRODUCT) Operation Binary Relational Operations: JOIN and DIVISION The JOIN Operation Variations of JOIN: The EQUIJOIN and NATURAL JOIN A Complete Set of Relational Algebra Operations The DIVISION Operation Notation for Query Trees Additional Relational Operations Generalized Projection Aggregate Functions and Grouping Recursive Closure Operations OUTER JOIN Operations The OUTER UNION Operation The Tuple Relational Calculus Tuple Variables and Range Relations Expressions and Formulas in Tuple Relational Calculus The Existential and Universal Quantifiers Sample Queries in Tuple Relational Calculus Notation for Query Graphs Transforming the Universal and Existential Quantifiers Using the Universal Quantifiers in Queries Safe Expressions

5 6.7 The Domain Relational Calculus Conceptual Data Modeling Using Entities and Relationships Using High-Level Conceptual Data Models for Database Design Entity Types, Entity Sets, Attributes, and Keys Entities and Attributes Entity Types, Entity Sets, Keys, and Value Sets Relationship Types, Relationship Sets, Roles & Structural Constraints Relationship Types, Sets and Instances Relationship Degree, Role Names, and Recursive Relationships Constraints on Binary Relationship Types Attributes of Relationship Types Weak Entity Types ER Diagrams, Naming Conventions, and Design Issues Summary of Notation for ER Diagrams Proper Naming of Schema Constructs Design Choices for ER Conceptual Design Alternative Notations for ER Diagrams Relationship Types of Degree Higher than Two Choosing between Binary and Ternary (or Higher-Degree) Relationships Constraints on Ternary (or Higher-Degree) Relationships Subclasses, Superclasses, and Inheritance Specialization and Generalization in EER Specialization Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Constraints on Specialization and Generalization Specialization and Generalization Hierarchies and Lattices Utilizing Specialization and Generalization in Refining Conceptual Schemas Modeling of UNION Types Using Categories in EER A Sample UNIVERSITY EER Schema, Design Choices, and Formal Definitions The UNIVERSITY Database Example Design Choices for Specialization/Generalization Data Abstraction, Knowledge Representation, & Ontology Concepts Classification and Instantiation Identification Specialization and Generalization Aggregation and Association Ontologies and the Semantic Web Mapping a Conceptual Design into a Logical Design Relational Database Design using ER-to-Relational Mapping ER-to-Relational Mapping Algorithm Discussion and Summary of Mapping for ER Model Constructs Mapping EER Model Constructs to Relations Mapping of Specialization or Generalization Mapping of Shared Subclasses (Multiple Inheritance) Mapping of Categories (Union Types)

6 12 SQL Application Programming Using C and Java Database Programming: Techniques and Issues Approaches to Database Programming Impedance Mismatch Typical Sequence of Interaction in Database Programming SQL Web Programming Using C PHP A Simple PHP Example Overview of Basic Features of PHP PHP Variables, Data Types, and Programming Constructs PHP Arrays PHP Functions PHP Server Variables and Forms Overview of PHP Database Programming Connecting to a Database Collecting Data from Forms and Inserting Records Retrieval Queries from Database Tables Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies Informal Design Guidelines for Relation Schemas Imparting Clear Semantics to Attributes in Relations Redundant Information in Tuples and Update Anomalies NULL values in Tuples Generation of Spurious Tuples Summary and Discussion of Design Guidelines Functional Dependencies Definition of Functional Dependency Normal Forms Based on Primary Keys Normalization of Relations Practical Use of Normal Forms Definitions of Keys and Attributes Participating in Keys First Normal Form Second Normal Form Third Normal Form General Definitions of Second & Third Normal Forms Boyce-Codd Normal Form Database Design Theory: Normalization Algorithms Further Topics in Functional Dependencies: Inference Rules, Equivalence, and Minimal Cover Inference Rules for Functional Dependencies Equivalence of Sets of Functional Dependencies Minimal Sets of Functional Dependencies Properties of Relational Decompositions Dependency Preservation Property of a Decomposition Nonadditive (Lossless) Join Property of a Decomposition Testing Binary Decompositions for the Nonadditive Join Property Successive Nonadditive Join Decompositions Algorithms for Relational Database Schema Design

7 Dependency-Preserving Decomposition into 3NF Schemas Nonadditive Join Decomposition into BCNF Schemas Dependency-Preserving and Nonadditive (Lossless) Join Decomposition into 3NF Schemas About Nulls, Dangling Tuples, and Alternative Relational Designs Problems with NULL Values and Dangling Tuples Discussion of Normalization Algorithms and Alternative Relational Designs Database File Organizations: Unordered, Ordered, and Hashed Files of Records Introduction Memory Hierarchies and Storage Devices Storage of Databases Secondary Storage Devices Buffering of Blocks Placing File Records on Disk Records and Record Types Files, Fixed-length Records, and Variable-Length Records Record Blocking and Spanned versus Unspanned Records Allocating File Blocks on Disk File Headers Operations on Files Files of Unordered Records (Heap Files) Files of Ordered Records (Sorted Files) Hashing Techniques Internal Hashing External Hashing for Disk Files Hashing Techniques That Allow Dynamic File Expansion Other Primary File Organizations Files of Mixed Records Parallelizing Disk Access Using RAID Technology New Storage Systems Storage Area Networks Network-Attached Storage iscsi Storage Systems Database File Indexing Techniques, B-Trees, and B+-Trees Types of Single-Level Ordered Indexes Primary Indexes Clustering Indexes Secondary Indexes Multilevel Indexes Dynamic Multilevel Indexes Using B-trees & B+-Trees Search Trees and B-trees B+-trees Indexes on Multiple Keys Ordered Index on Multiple Attributes Partitioned Hashing Grid Files Other Types of Indexes Hash Indexes

8 Bitmap Indexes Function-Based Indexing Some General Issues Concerning Indexing Logical versus Physical Indexes Discussion Column-Based Storage of Relations Introduction to Query Processing and Query Optimization Techniques Translating SQL Queries into Relational Algebra Algorithms for External Sorting Algorithms for SELECT and JOIN Operations Implementing the SELECT Operation Implementing the JOIN Operation Algorithms for PROJECT and Set Operations Implementing Aggregate Operations and OUTER JOINs Implementing Aggregate Operations Implementing OUTER JOINs Combining Operations Using Pipelining Using Heuristics in Query Optimization Notation for Query Trees and Query Graphs Heuristic Optimization of Query Trees Converting Query Trees into Query Execution Plans Using Selectivity and Cost Estimates in Query Optimization Cost components for Query Execution Catalog Information Used in Cost Functions Examples of Cost Functions for SELECT Examples of Cost Functions for JOIN Multiple Relation Queries and JOIN Ordening Example to Illustrate Cost-Based Query Optimization Overview of Query Optimization in Oracle Semantic Query Optimization Foundations of Database Transaction Processing Introduction to Transaction Processing Single-User versus Multiuser Systems Transactions, Database Items, Read and Write Operations, and DBMS Buffers Why Concurrency Control Is Needed Why Recovery Is Needed Transaction and System concepts Transaction States and Additional Operations The System Log Commit Point of a Transaction Desirable Properties of Transactions Characterizing Schedules Based on Recoverability Schedules (Histories) of Transactions Characterizing Schedules Based on Recoverability Characterizing Schedules Based on Serializability Serial, Nonserial, and Conflict-Serializable Schedules Testing for Conflict Serializability of a Schedule How Serializability Is Used for Concurrency Control

9 View Equivalence and View Serializability Other Types of Equivalence of Schedules Transaction Support in SQL Introduction to Protocols for Concurrency Control in Databases Two-Phase Locking Techniques for Concurrency Control Types of Locks and System Lock Tables Guaranteeing Serializability by Two-Phase Locking Dealing with Deadlock and Starvation Concurrency Control Based on Timestamp Ordering Timestamps The Timestamp Ordering Algorithm Multiversion Concurrency Control Techniques Multiversion Technique Based on Timestamp Ordering Multiversion Two-Phase Locking Using Certify Locks Validation (Optimistic) Concurrency Control Techniques Granularity of Data Items and Multiple Granularity Locking Granularity Level Considerations for Locking Multiple Granularity Level Locking Using Locks for Concurrency Control in Indexes Other Concurrency Control Issues Insertion, Deletion, and Phantom Records Interactive Transactions Latches Introduction to Database Recovery Protocols Recovery Concepts Recovery Outline and Categorization of Recovery Algorithms Caching (Buffering) of Disk Blocks Write-Ahead Logging, Steal/No-Steal, and Force/No-Foce Checkpoints in the System Log and Fuzzy Checkpoints Transaction Rollback and Cascading Roll back Transactions Actions That Do Not Affect the Database NO-UNDO/REDO Recovery Base on Deffered Update Recovery Rechniques Based on Immediate Update Shadow Paging Before Transaction During Transaction Recovery Process Disadvantages The Aries Recovery Algorithm Analysis Phase REDO Phase UNDO Phase Structures Log Sequence Number (LSN) Tables Checkpoints Recovery from crash Recovery in Multidatabse Systems

10 22.7 Database Backup and Recovery from Catastrophic Failures Handling more Catastrophic Failures Increase frequency

11 Hoofdstuk 1 Introduction to Databases 1.1 Introduction Een database heeft volgende eigenschappen: Het is een representatie van een aspect in de echte wereld, een miniwereld, ook wel universe of discourse (UoD) genaamd. Een database is een verzameling van gerelateerde informatie/data. Een database wordt ontworpen, gebouwd en ingevuld voor een specifiek doel. Aanpassingen moeten zo snel mogelijk weergegeven worden in de database. Een database management system (DBMS) is een set van programma s die de gebruiker toelaat een database te creëren en te onderhouden. 1.2 An Example Het manipuleren van een database omvat querying en updating. Een query moet gespecifieerd zijn in een bepaalde query-taal, behorende tot het DBMS, alvorens hij kan worden uitgevoerd. 1. Het ontwikkelen van een applicatie voor een bestaande database, of het ontwikkelen van een compleet nieuwe database start met een fase genaamd requirements specification and analysis. De eisen/voorwaarden van de database worden hier in detail vastgelegd. 2. De eisen/voorwaarden worden omgevormd tot een conceptual design dat weergegeven en bewerkt kan worden op een computer. 3. Het conceptual design wordt omgezet naar een logical design, dat geïmplementeerd kan worden in een commercieel DBMS. 4. Het logical design wordt omgezet in een physical design, waar men de verdere specificaties voor opslag en toegang tot de database zal vastleggen. Hierna kan men beginnen de database te bevolken. 10

12 1.3 Characteristics of the Database Approach Een database bestaat uit een enkele opslagplaats waar gegevens worden bijgehouden die één keer gedefinieerd worden en nadien toegankelijk zijn voor alle gebruikers Self-Describing Nature of a Database System Een basiskenmerk van een databasesysteem is dat het systeem niet enkel de database zelf bevat maar ook een complete definitie of beschrijving van de databasestructuur en zijn beperkingen. Deze definitie wordt bijgehouden in de DBMS catalogus. De informatie in deze catalogus is de zogenaamde meta-data, en beschrijft de structuur van de primaire database Insulation between Programs and Data, and Data Abstraction In traditionele bestandsverwerking is de structuur van de data files ingebouwd in het programma dat gebruik maakt van het bestand. Als de structuur van een bestand gewijzigd wordt, zullen dus ook alle programma s die gebruik maken van het bestand, aangepast moeten worden. Een DBMS daarentegen bewaart de structuur van de bestanden in de catalogus, apart van de programma s die het gebruiken. We noemen dit program-data independence. Een operation (functie of methode) bestaat uit 2 delen. De interface (signature) van een operatie bevat de naam van de operatie en de data types van zijn argumenten (parameters). De implementatie van de operatie is apart gedefinieerd en kan aangepast worden zonder dat de interface gewijzigd moet worden. Gebruikersprogramma s kunnen met de data werken door middel van operatienamen en -parameters, onafhankelijk van hoe de operaties geïmplementeerd zijn. We noemen dit programoperation independence. De karakteristiek die program-data independence en program-operation independence toelaat, wordt de data abstraction genoemd. Een data model is een soort van data abstraction die voor een conceptual representation van de data zorgt Support of Multiple Views of the Data Een database heeft vaak meerdere gebruikers die eventueel een ander zicht (view) willen op de database. Een view kan een subset van de database zijn maar het kan ook zelf virtuele data bevatten die afgeleid is van de data in de database maar er niet opgeslagen is Sharing of Data and Multiuser Transaction Processing Een multiuser DBMS moet toelaten dat meerdere gebruikers tegelijkertijd toegang hebben tot de database. Hiervoor moet de DBMS over concurrency control software beschikken om te verzekeren dat het updaten van data door meerdere gebruikers correct verloopt zodat ook het resultaat hiervan correct is. Een transactie is een uitvoerend programma of proces dat één of meerdere database accesses omvat. De isolation-eigenschap verzekert dat elke transactie uitgevoerd wordt, afgezonderd van andere transacties. De atomicity-eigenschap verzekert dat alle transacties ofwel volledig uitgevoerd worden, ofwel niet uitgevoerd worden. 11

13 1.4 Actors on the Scene Actors on the scene zijn de personen die dagelijks een grote database gebruiken Database Administrators Er is nood aan een chief administrator, we noemen deze de database administrator (DBA). Hij is verantwoordelijk voor autorisatie, coördinatie, monitoring en de software en hardware resources. Hij is ook de persoon die verantwoordelijk gesteld kan worden voor problemen zoals veiligheidslekken en een slechte responstijd van het systeem Database Designers Database designers zijn de personen die verantwoordelijk zijn voor het identificeren van de data die opgeslagen moet worden op de database en voor het kiezen van de juiste datastructuren om deze op te slagen data voor te stellen in de database End Users Eindgebruikers zijn de personen wiens job eruit bestaat een database te bevragen, up te daten en rapporten te maken. We kunnen ze onderverdelen in verschillende categorieën: Casual end users hebben de database occasioneel nodig en hebben mogelijk elke keer andere gegevens nodig. Naive of parametric end users bevragen en updaten de database constant. Sophisticated end users (zoals ingenieurs of wetenschappers) kennen de eigenschappen en mogelijkheden van de database zeer goed zodat ze hun eigen applicaties kunnen implementeren. Standalone users hebben meestal een persoonlijke database System Analysts and Application Programmers (Software Engineers) System analysts bepalen de eisen van de eindgebruiker en ontwerpen de specificaties voor alleenstaande transacties die voldoen aan deze eisen. Application programmers implementeren deze specificaties als programma s die ze testen, debuggen en documenteren. 1.5 Workers behind the Scene Dit stuk gaat over de mensen die de DBMS software en system environment ontwerpen, ontwikkelen en de operaties ervan uitschrijven. Ze zijn meestal niet geïnteresseerd in de inhoud van de database. DBMS system designers en implementers ontwerpen en implementeren de DBMS modules en interfaces als een softwarepakket. Tool developers ontwerpen en implementeren tools. Tools zijn optionele pakketten die vaak apart aangekocht kunnen worden. Operators en maintenance personnel is het system administration personnel. Ze zijn verantwoordelijk voor het runnen en het onderhoud van de hardware en software environment. 12

14 1.6 Advantages of Using the DBMS Approach Controlling Redundancy De redundantie is het meermaals opslaan van dezelfde data, dit leidt tot verschillende problemen. Een simpele update moet meerdere malen uitgevoerd worden, dit is duplication of effort. Opslagruimte wordt verspilt. Bestanden die dezelfde data voorstellen kunnen inconsistent worden omdat een update niet wordt doorgevoerd op alle bestanden. We moeten een database hebben die elk logical data item (bv. naam en geboortedatum) opslaat op één enkele plaats in de database, dit heet data normalization. Soms is er echter nood aan gecontroleerde redundantie. Dit komt voor indien we alle data die vaak samen opgevraagd wordt, in 1 bestand plaatsen. Hierdoor moet er bij een query slechts 1 bestand doorzocht worden i.p.v. meerdere. Dit heet denormalization Restricting Unauthorized Access Als meerdere gebruikers een grote database delen, is het logisch dat niet iedereen toegang heeft tot alle data. Een DBMS moet een security and authorization subsystem bevatten, waarmee de DBA accounts kan aanmaken en restricties kan opleggen Providing Persistent Storage for Program Objects Databases kunnen gebruikt worden om persistente opslag voor programma-objecten en datastructuren aan te bieden. Dit is één van de redenen voor object-oriented database systems. Een complex object in C++ kan permanent opgeslagen worden in een object-georiënteerd DBMS. Zo een object noemen we persistent, omdat het de beëindiging van het programma overleeft en later direct kan teruggevonden worden Providing Storage Structures and Search Techniques for Efficient Query Processing Databasesystemen moeten de mogelijkheid hebben tot het efficiënt uitvoeren van query s en updates. Omdat een database vaak is opgeslagen op een disk, moet de DBMS speciale datastructuren en technieken voorzien om de seektime te versnellen. Een oplossing hiervoor is werken met indexering. Een DBMS biedt vaak buffering of caching modules aan, die bijgehouden worden in het hoofdgeheugen. De query processing and optimization module is verantwoordelijk voor het kiezen van een efficiënt query-uitvoeringsplan voor elke query, gebaseerd op de huidige opslagstructuur Providing Backup and Recovery Een DBMS moet de mogelijkheid bezitten om te herstellen van hardware- of softwarefouten. Het backup and recovery subsystem van de DBMS is verantwoordelijk voor het herstel. Het moet kunnen herstellen, hervatten of een backup maken. 13

15 1.6.6 Providing Multiple User Interfaces Dit omvat query-talen voor casual users, programming language interfaces voor application programmers, formulieren en commando s voor parametric users en menu-gestuurde interfaces en natural language interfaces voor standalone users. Vaak in combinatie met een GUI Representing Complex Relationships among Data Een DBMS moet de mogelijkheid bieden om complexe relaties tussen data voor te stellen, evenals de mogelijkheid om nieuwe relaties te definiëren en gerelateerde data snel en efficiënt terug te vinden Enforcing Integrity Constraints De meeste database applications hebben bepaalde integrity constraints die moeten gelden voor de data. Een DBMS moet de mogelijkheid bieden om constraints te definiëren en ze te handhaven Permitting Inferencing and Actions Using Rules Sommige databasesystemen hebben de mogelijkheid om informatie af te leiden uit reeds bestaande data. Zulke systemen noemen we deductive database systems. In moderne databases bestaat de mogelijkheid om triggers te associëren met tabellen. Een trigger is een soort regel die toegepast wordt bij een update op een tabel, wat resulteert in het uitvoeren van extra operaties zoals het sturen van een boodschap. Nog sterker zijn active database systems, deze leveren actieve regels die automatisch acties uitvoeren wanneer bepaalde gebeurtenissen of condities voorkomen Additional Implications of Using the Database Approach Potential for Enforcing Standards: de DBA wordt toegelaten om een bepaalde standaard te definiëren voor de users. Reduced Application Development Time: eens een database is opgezet en runt, is er minder tijd nodig om een nieuwe applicatie te ontwikkelen, gebruikmakend van de DBMS mogelijkheden. Flexibility: moderne DBMS en laten verschillende soorten van evolutionaire veranderingen toe in de structuur van de database zonder invloed op de opgeslagen data of applicaties. Availability of Up-to-Date information: vanaf het moment dat een gebruiker bepaalde data heeft geüpdatet, moeten deze wijzigingen zichtbaar zijn voor andere gebruikers. Economies of Scale: systemen kunnen gedeeld worden om overlappingen te voorkomen op verschillende niveaus. 1.8 When Not to Use a DBMS Er zijn bepaalde situaties waarbij het gebruik van een DBMS een onnodige overhead kan veroorzaken, wat niet zou voorkomen bij het traditionele file processing. De overhead van een DBMS kan volgende oorzaken hebben: Te hoge initiële kosten voor hardware, software en training De algemeenheid van een DBMS Overhead voor het leveren van security, concurrency en recovery 14

16 Hoofdstuk 2 Overview of Database Languages and Architectures DBMS packages zijn gegroeid van één geïntegreerd systeem naar modulaire systemen. Deze bestaan uit verschillende delen. Standaard wordt er gewerkt met twee modules: een client module die de gebruikersinteractie moet verzorgen en een server module die zaken als dataopslag, toegang, en het doorzoeken van de database op zich neemt. 2.1 Data Models, Schemas, and Instances Een belangrijk kenmerk van databases is dat ze een soort van data abstraction voorzien. Hiermee bedoelt men dat zaken als de schijfopslag van de data worden genegeerd, terwijl enkel het belangrijkste om de data te kunnen bestuderen en interpreteren wordt getoond. Er worden ook meer en meer hoogniveau operaties geïmplementeerd zodat manipulatie of interpretatie van de opgeslagen data zo eenvoudig mogelijk wordt. Dit wordt ook wel het dynamische aspect van de database genoemd Categories of Data Models Er zijn een drietal interessante, veel voorkomende datamodellen: Hoog-niveau of conceptuele datamodellen Deze datamodellen gebruiken concepten als entiteiten, attributen en relaties: een entiteit stelt een object uit de echte wereld voor een attribuut stelt een eigenschap van zo een entiteit voor een relatie stelt een associatie voor tussen twee of meer entiteiten Representatieve of implementatie-datamodellen Deze datamodellen worden in commerciële databasesystemen het vaakst gebruikt. Ze maken gebruik van relaties, maar ook van record structures. Laag-niveau of fysieke datamodellen Deze datamodellen beschrijven hoe data in bestanden wordt opgeslagen in het geheugen door informatie als het recordformaat, recordsortering en toegangspaden te beschrijven. 15

17 2.1.2 Schemas, Instances and Database State Er moet bij elk datamodel een onderscheid gemaakt worden tussen de beschrijving van een database en de database zelf. De beschrijving van een database gebeurt in een database schema, ook wel een schema-diagram genoemd. Dit schema wordt ontwikkeld vóór het maken van de database en wordt niet dikwijls gewijzigd. Dit diagram geeft dus eigenlijk de structuur (de tabellen en hun kolomhoofden) weer van een database. De eigenlijke data van een database verandert regelmatig d.m.v. manipulaties. Elke momentopname in de tijd van de data in een database heet de database state (databasetoestand of instantie). Je kan het ook als volgt beschrijven: het schema is de intensie van de database, terwijl een databasetoestand een extensie van dit schema is. 2.2 Three-Schema Architecture and Data Independence De 3-schema architectuur probeert de volgende drie kenmerken te bereiken en visualiseren: Een catalog gebruiken om het schema in op te slaan zodat de database zelfbeschrijvend wordt. Isolatie tussen programma s en opgeslagen data. Ondersteunen van meerdere user views (manieren om de data te kunnen interpreteren) The Three-Schema Architecture In deze architectuur kunnen schema s op drie niveaus gedefiniëerd worden: Het interne niveau heeft een intern schema dat de fysische opslagstructuur en de toegangspaden beschrijft. Het conceptuele niveau heeft een conceptueel schema (implementatiemodel) dat de structuur van de database weergeeft voor gebruikers. Het externe niveau of view niveau heeft een aantal user views (hoe gebruikers data zien). Deze niveaus moeten uiteraard kunnen samenwerken. Bij het opvragen van data moet deze data aangepast worden om binnen de view van een zekere gebruik te passen. Deze transformaties tussen de verschillende niveaus heten mappings Data Independence Data independence binnen de 3-schema architectuur houdt in dat je het schema van één niveau kan veranderen zonder dat je het schema van het niveau direct daarboven moet aanpassen. Er zijn twee types: Logical data independence houdt in dat je het conceptueel schema kan aanpassen zonder dat je daarvoor de externe schema s of applicaties moet voor aanpassen. Je moet dus de structuur kunnen aanpassen en constraints kunnen definiëren zonder dat je daarvoor een aanpassing moet doen aan die externe schema s of applicaties. Physical data independence betekent dat je het intern schema kan aanpassen, zonder dat je aan het conceptueel schema dat er boven draait moet moet raken. De laatste soort onafhankelijkheid komt in de meeste databases wel voor, maar de eerste soort is iets moeilijker te verkrijgen. 16

18 2.3 Database Languages and Interfaces DBMS Languages Er zijn 4 theoretische DBMS-talen die belangrijk zijn voor de goede werking van de database: De data definition language (DDL) wordt gebruikt om de conceptuele en interne schema s te definiëren. De storage definition language (SDL) specificieert het interne schema. De view definition language (VDL) bepaalt de user views en de mappings die ze hebben naar het conceptueel schema. De data manipulation language (DML) staat in voor het manipuleren van data: opvragen, toevoegen, verwijderen of aanpassen. Deze zijn theoretisch omdat men in de praktijk niet werkt met aparte talen: alles wordt in één geïntegreerde taal gedefinieerd. Er zijn 2 soorten DMLs: high-level en low-level. Waar een high-level DML op zichzelf kan steunen om query s en dergelijke te processen (het wordt dan ook vaak query-taal genoemd), moet een low-level DML ingebouwd worden in een algemene programeertaal om gebruik te kunnen maken van hun functies zoals loops. In dit laatste geval is de low-level taal een data sublanguage van de host language, de programmeertaal waarin de low-level taal geschreven is DBMS Interfaces Volgende interfaces kunnen in de database aanwezig zijn: Menu-Based Interfaces for Web Clients or Browsing. Deze interfaces worden gebruikt om de inhoud van de database te kunnen opvragen en bekijken met behulp van drop-down menu s. Forms-Based Interfaces. Deze interfaces maken gebruik van invulvelden om data op te vragen of om nieuwe data toe te voegen. Graphical User Interfaces. Dit type interfaces maakt gebruik van de twee voorgaande methodes om een nette interface te geven aan de gebruikers. Natural Language Interfaces. Hier wordt geprobeerd ingegeven woorden uit een spreektaal te vertalen zodat de zin kan geïnterpreteerd worden. Dit heet dan keyword-based querying. Speech Input and Output. Hierbij kan men via gesproken taal een query ingeven, het resultaat wordt door de computer ook in gesproken taal gegeven. Interfaces for Parametric Users. Interfaces voor gebruikers die een beperkte set commando s bij herhaling nodig hebben. Door hier een specifieke set van commando s in te voeren moeten er minder toetsen worden ingedrukt. Interfaces for the DBA. Uiteraard moeten ook de database administrators in staat zijn de database te kunnen manipuleren. Zij hebben daar deze specifieke interfaces voor. 17

19 2.4 The Database System Environment DBMS Component Modules Elke database en zijn catalogus is opgeslagen op een schijf. Toegang tot deze schijf wordt geregeld door het besturingssysteem. Daar zit uiteraard ook buffer management ingebakken om disk read/write operations te schedulen. Bovendien is er nog een stored data manager die de toegang tot informatie over het systeem beheert. Het user-gedeelte van de database bestaat uit de toegang voor de DBA staff, casual users, application programmers en parametric users. Het query and transactie-gedeelte staat in voor het uitvoeren van queries op de data en het teruggeven van het resultaat. Dit gebeurt in de runtime database processor, gebruikmakend van de system catalog en de stored data manager. Voordat de query wordt uitgevoerd is deze reeds gecompiled en geoptimaliseerd door de desbetreffende modules in het user-gedeelte. Zie eventueel figuur 2.3 op pagina Database System Utilities Elke database heeft een aantal system utilities die helpen bij het beheer van de database: Loading. Deze utility staat in voor het inladen van bestaande data files in een bepaald formaat (bv. tekstbestanden of sequentiële bestanden) in de database. Backup. Deze tool maakt een gehele backup van de database om de data te kunnen herstellen bij een disk failure. Soms werkt deze tool met incrementele backup waarbij enkel de veranderingen sinds de laatste toestand worden opgeslagen. Database storage reorganisation. Een tool om een set data te reorganiseren in files of in een ander pad in de database. Performance monitoring. Deze utility houdt het gebruik van de database bij en maakt er statistieken van die door de administrators kunnen geïnterpreteerd worden Tools, Application Environments, and Communications Facilities Er zijn nog een aantal extra tools die handig kunnen zijn, bijvoorbeeld een information repository. Hierin worden zaken als ontwerpsbeslissingen bijgehouden. Er is vaak ook communication software nodig om vanop afstand aan de database te kunnen. 2.5 Centralized & Client/Server Architectures for DBMSs Centralized DBMSs Architecture De eerste databases werden gebouwd als mainframes met daarop aangesloten terminals, deze terminals hadden geen eigen rekenkracht. Omdat hardware goedkoper werd, begon men de terminals te vervangen door PC s en werkstations waarbij het hele DBMS nog steeds centraal draaide. 18

20 2.5.2 Basic Client/Server Architectures Dit type architectuur werd ontwikkeld om te kunnen werken in omgevingen met een groot aantal PC s, werkstations, printers en allerhande servers. Het idee is om verscheidene servers specifieke taken te geven in plaats van alles zomaar te centraliseren. Server-side wordt alles verdeeld over verschillende types servers (printservers, fileservers, webservers,... ). Daarnaast is er ook de client-side, waarbij elke machine zijn gebruiker voorziet van de nodige interfaces om met deze servers te kunnen werken. Al deze servers en machines zijn onderling verbonden via een communicatienetwerk Two-Tier Client/Server Architectures for DBMSs Een 2-tier client/server architecture is rechtstreeks gegroeid uit de gecentraliseerde architectuur. Interfaces en applicatieprogramma s werden verhuisd van server- naar client-side. De server heet in zo n 2-tier systeem vaak de query server of transaction server omdat dit de functies van de server zijn. Client-side is er een programma dat via een API met de database kan verbinden en er query s kan op uitvoeren binnen de rechten die toegekend zijn aan de client. De softwarecomponenten zijn dus over 2 soorten systemen verdeeld zijn: clients en servers Three-Tier and n-tier Architectures for Web Applications Veel webapplicaties werken tegenwoordig met een 3-tier architecture. Er wordt een extra laag ingebouwd tussen client en server: een application server of web server. Deze server draait de applicatieprogramma s en slaat procedures en constraints op waarmee men rekening mee moet houden bij het opvragen van data van de database server. Deze middle-tier geldt ook als extra veiligheidsmaatregel: je kan een client verifiëren voor je zijn query doorstuurt naar de databaseserver. Op de client-layer zijn dan de gebruikers- en webinterfaces aanwezig, terwijl op de server alle data management services aanwezig zijn. De verschillende layers kunnen nog verder uit mekaar gehaald worden tot n-tier architectures, bijvoorbeeld een encryptie-/decryptieserver om communicatie van en naar de servers te beveiligen. 2.6 Classification of Database Management Systems Om DBMSs te classificeren zijn er een zestal criteria om te beschouwen: Het gebruikte datamodel. In veel DBMSs is dat het relationele datamodel. Aantal ondersteunde gebruikers. Een single-user system ondersteunt maar één gebruiker tegelijk, een multiuser system meerdere. Aantal plaatsen waarover de database verdeeld is. Een DBMS is gecentraliseerd als de data op één plaats staat en gedistribueerd als de data verspreid is over meerdere plaatsen. Kost. Er zijn gratis systemen zoals MySQL en PostgreSQL maar er zijn ook betalende systemen. Veel geld gaat meestal uit naar het onderhoud van de systemen en ondersteuning als er problemen zijn. De prioriteiten liggen hier voor particulieren anders dan voor bedrijven. Het gekozen type access path. Men gebruikt meestal geïnverteerde bestandstructuren. Het doel. Er zijn databases voor algemene doeleinden en voor speciale doeleinden. 19

Databases - Inleiding

Databases - Inleiding Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden

Nadere informatie

SQL datadefinitietaal

SQL datadefinitietaal SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen

Nadere informatie

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

Inhoud. Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank v Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank 1 Introductie: data en informatie 1.0 Wat leer je in dit hoofdstuk? 1.1 Verschil tussen gegevens en

Nadere informatie

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

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd. SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Relationele databases

Nadere informatie

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

Inhoud. Voorwoord 1 Belangrijkste kenmerken van dit boek 1 De opzet van dit boek 1 Over de auteurs 2 Woord van dank 2 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

Nadere informatie

Databases en SQL Foundation (DBSQLF.NL)

Databases en SQL Foundation (DBSQLF.NL) Databases en SQL Foundation (DBSQLF.NL) EXIN Hét exameninstituut voor ICT ers Janssoenborch - Hoog Catharijne Godebaldkwartier 365 3511 DT Utrecht Postbus 19147 3501 DC Utrecht Nederland T +31 30 234 48

Nadere informatie

Informatie & Databases

Informatie & Databases Informatie Wat is informatie en waaruit het bestaat? Stel op een kaart staat het getal 37 geschreven. Wat kun je dan zeggen van het cijfer 37? Niets bijzonders, toch? Alleen dat het een getal is. Gaat

Nadere informatie

EXIN Databases en SQL Foundation

EXIN Databases en SQL Foundation EXIN Databases en SQL Foundation Preparation Guide Editie 201608 Copyright 2016 EXIN All rights reserved. No part of this publication may be published, reproduced, copied or stored in a data processing

Nadere informatie

DB architectuur. joost.vennekens@denayer.wenk.be

DB architectuur. joost.vennekens@denayer.wenk.be DB architectuur joost.vennekens@denayer.wenk.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet

Nadere informatie

NHibernate als ORM oplossing

NHibernate als ORM oplossing NHibernate als ORM oplossing Weg met de SQL Queries Wat is ORM? ORM staat in dit geval voor Object Relational Mapping, niet te verwarren met Object Role Modeling. ORM vertaalt een objectmodel naar een

Nadere informatie

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model...

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 4 1.1.4. Wat is SQL?... 6 1.1.5. Verschillende categorieên

Nadere informatie

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

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. SQL manipulatietaal We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: INSERT : toevoegen van gegevens DELETE : verwijderen van gegevens UPDATE : wijzigen van gegevens

Nadere informatie

Datamodelleren en databases 2011

Datamodelleren en databases 2011 Datamodelleren en databases 21 Capita selecta 1 In dit college Modelleren Normaliseren Functionele afhankelijkheid 1-3N M:N-relaties, associatieve entiteittypes, ternaire relaties Weak entiteittypes Multivalued

Nadere informatie

Sparse columns in SQL server 2008

Sparse columns in SQL server 2008 Sparse columns in SQL server 2008 Object persistentie eenvoudig gemaakt Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Content SPARSE COLUMNS IN SQL SERVER 2008... 1 OBJECT PERSISTENTIE EENVOUDIG

Nadere informatie

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

DBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen. SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Op dit moment gebruiken

Nadere informatie

DB architectuur.

DB architectuur. DB architectuur joost.vennekens@kuleuven.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet bekommeren

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 1 Relationele Databases 2002/2003 Hoorcollege 3 24 april 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 2.1, 2.3, 2.6 (alleen voor 2.2 en 2.3), 2.9, 2.10, 2.11,

Nadere informatie

Hoofdstuk: 1 Principes van databases

Hoofdstuk: 1 Principes van databases DBSQLF Databases en SQL Hoofdstuk: 1 Principes van databases aant Css: 4 732 blz 9 1.1 Doel ve database - om op het juiste moment op de juiste plaats de juiste gegevens beschikbaar te hebben richten we

Nadere informatie

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

SQL en XML. XML schema s & DMO. Entiteitsklasse en attribuut. SQL en XML. Datamodellering Schema een ruim begrip (zie Møller, p. SQL en XML Datamodellering 2007 1 XML schema s & DMO Schema een ruim begrip (zie Møller, p. 96) DTD schema W3C Schema In dit overzicht: Wat zijn de belangrijke zaken uit XML voor datamodellering? (onvolledig)

Nadere informatie

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

12. Meer dan één tabel gebruiken en sub-queries 12. Meer dan één tabel gebruiken en sub-queries 12.1. Inleiding In de vorige hoofdstukken heb je telkens queries uitgevoerd op één tabel. In de praktijk is het raadplegen van gegevens over het algemeen

Nadere informatie

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

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd. BASISINSTRUCTIES SQL SQL : Structured Query Language is een taal gericht op het ondervragen van een relationele database en die aan veel klassieke databasemanagementsystemen kan worden gekoppeld. SQL is

Nadere informatie

Thinking of development

Thinking of development Thinking of development Databases Arjan Scherpenisse HKU / Miraclethings Agenda voor vandaag Opdracht tussenstand State diagram / Observer pattern Bret Victor Databases 2/42 Opdracht tussenstand Slides

Nadere informatie

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003 SQL Aantekeningen 3 Maarten de Rijke mdr@science.uva.nl 22 mei 2003 Samenvatting In deze aflevering: het selecteren van tuples, operaties op strings, en aggregatie functies. Verder kijken we naar iets

Nadere informatie

SQL & Datamodelleren

SQL & Datamodelleren SQL & Datamodelleren HVA-CMD-V1-datamodelleren Algemene handleiding bij het lesprogramma 2012-2013 Inhoud Inhoud... 2 Inleiding... 3 Leerdoelen:... 3 Plaats in het leerplan:... 3 Werkwijze:... 3 Lesstof:...

Nadere informatie

Webapplicatie-generatie NIOC 2013

Webapplicatie-generatie NIOC 2013 Webapplicatie-generatie NIOC 2013 Eddy Luursema, Misja Nabben, Arnoud van Bers Research Group Model Based Information Systems Presentation Introduction M-BIS Data intensive systems Requirements Generation

Nadere informatie

Oracle Rolling Upgrades met SharePlex Bart.vanKnijff@quest.com Systems Consultant Quest Software Nederland 9/11 2007

Oracle Rolling Upgrades met SharePlex Bart.vanKnijff@quest.com Systems Consultant Quest Software Nederland 9/11 2007 Oracle Rolling Upgrades met SharePlex Bart.vanKnijff@quest.com Systems Consultant Quest Software Nederland 9/11 2007 Copyright 2006 Quest Software Agenda Wat is SharePlex? Toepassingen en de belangrijkste

Nadere informatie

Normaliseren versie 1.1

Normaliseren versie 1.1 Normaliseren versie 1.1 Datamodellering 27 1 Wat is normaliseren? Data organiseren in tabelvorm, zó dat: er minimale redundantie is update operaties (toevoegen, wijzigen, verwijderen) eenvoudig zijn uit

Nadere informatie

Databases (INFODB) 20 april 2010

Databases (INFODB) 20 april 2010 Departement Informatica en Informatiekunde, Faculteit Bètawetenschappen, UU. In elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. Het college INFODB werd in 2009-2010 gegeven door drs.

Nadere informatie

Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts

Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts Elfde-Liniestraat 24 3500 Hasselt Schooljaar 2009-2010 TINFO POKER GAME Oracle Scripts Studenten: Peter Asnong Rik Broens Tom De Keyser Daan Gielen Kris Gregoire Koen Olaerts Toon Wouters Inhoudsopgave

Nadere informatie

MySQL Administration. Inhoud

MySQL Administration. Inhoud MySQL Administration De cursus MySQL Administration is bedoeld voor MySQL-databasebeheerders, die basiskennis hebben van een MySQL-database en SQL-commando's. De cursus biedt praktische ervaring in het

Nadere informatie

Les 2 Eenvoudige queries

Les 2 Eenvoudige queries Les 2 Eenvoudige queries XAMP Apache server ( http ) mysql server PHP myadmin IAM SQL oefeningen Database phpmyadmin Import : sql_producten.sql, sql_winkel.sql, sql_festival.sql SAMS SQL in 10 minuten

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 1 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen. Theorie

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 Relationele Databases 2002/2003 Hoorcollege 4 8 mei 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 1 Plan voor Vandaag Praktische dingen Huiswerk 3.1, 3.2, 3.3, 3.4, 3.5. SQL Aantekeningen 2 Tabellen.

Nadere informatie

Zelftest DB2 for z/os basiscursus

Zelftest DB2 for z/os basiscursus Zelftest DB2 for z/os basiscursus Document: n1067test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST DB2 FOR Z/OS BASISCURSUS

Nadere informatie

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

Toon TITEL, JAAR en PLATVORM van GAMES die voor het jaar 2000 uitkwamen op Nintendo 64 Klas Veldnaam Datatype Lengte KLASNAAM Short Text 3 Characters JONGENS Number Integer MEISJES Number Integer Lessen Veldnaam Datatype Lengte KLASNAAM Short Text 3 Characters DOCCODE Short Text 3 Characters

Nadere informatie

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Wat is een database? Een verzameling van georganiseerde data Een database bestaat uit applicaties, SQL en het DBMS Watis eendbms? EenDBMS

Nadere informatie

Relationele databanken

Relationele databanken Relationele databanken De meeste databanken zijn relationeel. Gegevens in tabellen. Relationele model stoelt op de verzamelingenleer (leer der relaties). Relatie betekent hier tabel. Grote kracht van deze

Nadere informatie

Les 11 : Basis SQL (deel2).

Les 11 : Basis SQL (deel2). Les 11 : Basis SQL (deel2). Wat is SQL? SQL gaan we gebruiken voor het raadplegen van de database. We gaan gegevens invoegen in de database, selecteren, aanpassen en verwijderen van de database. Om dit

Nadere informatie

Application interface. service. Application function / interaction

Application interface. service. Application function / interaction Les 5 Het belangrijkste structurele concept in de applicatielaag is de applicatiecomponent. Dit concept wordt gebruikt om elke structurele entiteit in de applicatielaag te modelleren: softwarecomponenten

Nadere informatie

Secure Application Roles

Secure Application Roles Secure Application Roles Beheer de toegang tot de database 1. Inleiding Het realiseren van geautoriseerde toegang tot een database lijkt eenvoudig. Echter, vaak blijkt dat dezelfde combinatie van gebruikersnaam

Nadere informatie

Tentamen Databases voor iku

Tentamen Databases voor iku Scheur de antwoordvellen doormidden. Maak elke vraag op een ander vel. Tentamen Databases voor iku 17 april 2013 13:30-16:30, Educatorium-Gamma Vermeld op elk vel je naam en studentnummer. Indien één van

Nadere informatie

Tentamen Databases voor ica

Tentamen Databases voor ica Tentamen Databases voor ica 17 april 2014 16:30-19:30, Educatorium-Gamma Beantwoord vragen 1, 2, 4 en 5 door het invullen van de bijbehorende pagina s van dit tentamen en deze pagina s afzonderlijk in

Nadere informatie

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

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster 4. 4. Inhoud rste BAC Toegepaste Biologische Wetenschappen Hoofdstuk 4 Databank Terminologie, Navigeren, Importeren Tabellen Records/Velden manipuleren Queries (Vragen) [Ook in SQL] sorteren filter volgens

Nadere informatie

Pijlers van Beheer. Bram van der Vos www.axisintoict.nl ict@axisinto.nl

Pijlers van Beheer. Bram van der Vos www.axisintoict.nl ict@axisinto.nl Welkom Pijlers van Beheer Bram van der Vos www.axisintoict.nl ict@axisinto.nl Waarom doe je Beheer Business perspectief Stabiliteit Security Enablen voor gebruikers Ondersteuning Technisch Perspectief

Nadere informatie

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

Inleiding... 3. 1 Databases en Data Base Management Systems... 3. 2 Tabellen... 3. 3 Wat is SQL?... 5 1 Inhoudsopgave. Inleiding.... 3 1 Databases en Data Base Management Systems.... 3 2 Tabellen.... 3 3 Wat is SQL?... 5 4 Gegevens opvragen (deel 1).... 5 4.1 Boolean operatoren.... 7 4.2 IN en BETWEEN

Nadere informatie

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat: Training Trainingscode Duur Gepubliceerd Taal Type Leermethode Kosten SF2015V8 4 dagen 02/02/2015 Nederlands & Engels Developer, basis Invidueel & klassikaal Op aanvraag Deze training richt zich op het

Nadere informatie

6. Het maken van een database

6. Het maken van een database 6. Het maken van een database 6.1. Inleiding In hoofdstuk 5 heb je de oefendatabase gemaakt doormiddel van een script. In dit hoofdstuk ga je zelf een database maken en deze vullen met tabellen. Hiervoor

Nadere informatie

Programmeren. Cursus Python

Programmeren. Cursus Python Programmeren Cursus Python Cursus Python Omschrijving In deze cursus leren de deelnemers te programmeren in de objectgeoriënteerde programmeertaal Python. Python is een taal die vaak wordt gebruikt voor

Nadere informatie

DATAMODELLERING ER DIAGRAM

DATAMODELLERING ER DIAGRAM DATAMODELLERING ER DIAGRAM Inleiding In dit whitepaper wordt de datamodelleervorm ER diagram beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld krijgen

Nadere informatie

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

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 DATAMODEL SQL Middelbare School Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 INHOUDSOPGAVE 1. Informatiedomein 3 1.1 Informatiedomein 3 1.2 Toepassingen 3 2.

Nadere informatie

Vragen hoofdstuk 1: Resultaat

Vragen hoofdstuk 1: Resultaat Vragen hoofdstuk 1: Resultaat Het ontwikkelen van informatiesystemen bevat volgende activiteiten: Analyse van het probleem. Toewijzen van resources. Ontwerp van de onderdelen van het systeem. Bouw van

Nadere informatie

Hoog Beschikbaarheid en het waterschapshuis

Hoog Beschikbaarheid en het waterschapshuis Hoog Beschikbaarheid en het waterschapshuis het doel, de mogelijkheden en de beperkingen Oracle Waterschapsdag SPREKER : E-MAIL : DATUM : Johan Westerduin jwesterduin@transfer-solutions.com 30 november

Nadere informatie

Software Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces

Software Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces Software Processen Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Het software proces Een gestructureerd set van activiteiten nodig om een software systeem te ontwikkelen Specificatie;

Nadere informatie

Databases (INFODB) 24 januari 2007

Databases (INFODB) 24 januari 2007 Departement Informatica en Informatiekunde, Faculteit Bètawetenschappen, UU. In elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. Het college INFODB werd in 2006/2007 gegeven door Dhr.

Nadere informatie

Enterprisearchitectuur

Enterprisearchitectuur Les 2 Enterprisearchitectuur Enterprisearchitectuur ITarchitectuur Servicegeoriënteerde architectuur Conceptuele basis Organisatiebrede scope Gericht op strategie en communicatie Individuele systeemscope

Nadere informatie

Tentamen Databases voor ica

Tentamen Databases voor ica Tentamen Databases voor ica 16 april 2015 17:00-20:00, Educatorium-beta Lees eerst onderstaande aanwijzingen. Vermeld op elk vel je naam en studentnummer. Indien één van deze zaken ontbreekt, wordt het

Nadere informatie

Het omzetten van een ER-diagram naar SQL

Het omzetten van een ER-diagram naar SQL Het omzetten van een ER-diagram naar SQL Huub de Beer Eindhoven, 4 juni 2011 Omzetting ER-diagram naar SQL in twee stappen 1: ER-Diagram relationeel model Onderwerp van hoofdstuk 3 Entiteittype relatie,

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Extra Tentamen Databases 1, 2M400, 8 oktober 2003. Alle uitwerkingen van de opgaven moeten worden ingevuld in de daarvoor bestemde vrije

Nadere informatie

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen Inleiding Dit praatje gaat over Elasticsearch. De onderwerpen die aan bod komen: Wat is Elasticsearch?

Nadere informatie

Versieperikelen. Bijlage C

Versieperikelen. Bijlage C Bijlage C Versieperikelen In dit boek beschrijven we PL/SQL aan de hand van Oracle versie 11g. Alle eigenschappen die in dit boek behandeld worden, zijn in deze versie van Oracle (en in nog te verschijnen

Nadere informatie

Zelftest Java EE Architectuur

Zelftest Java EE Architectuur Zelftest Java EE Architectuur Document: n1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST JAVA EE ARCHITECTUUR Nota:

Nadere informatie

Introductie (relationele) databases

Introductie (relationele) databases Eerste les Introductie (relationele) databases Database en DBMS Een verzameling van gestructureerd opgeslagen gegevens Dus ook een kaartenbak is een database Van oudsher waren er hiërarchische en netwerkdatabases

Nadere informatie

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

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Anatomie van een databank Inhoud Computervaardigheden Hoofdstuk 5 Databanken (Let op: dit is enkel voor studenten Bio-Ingenieur.) Terminologie Data importeren Basis queries Allerhande Joins Doe dit. Aandachtspunt! Wat gebeurt hier?

Nadere informatie

Data Definition Language

Data Definition Language Data Definition Language We gaan hier dezelfde database gebruiken als in de vorige les. Nu gaan we deze echter maken met behulp van DDL gedeelte van SQL. Om in het SQL deel van Microsoft Access te komen

Nadere informatie

DMD-2011 Introductie. Introductie. Opzet van de cursus. Werkwijze per week. Datamodelleren en databases 2011. Twee hoorcolleges in totaal

DMD-2011 Introductie. Introductie. Opzet van de cursus. Werkwijze per week. Datamodelleren en databases 2011. Twee hoorcolleges in totaal Datamodelleren en databases 2011 Introductie Leen Breure 1/33 Opzet van de cursus Twee hoorcolleges in totaal week 1 en week 8 (14 juni) Wekelijks practicum: ca. 2 * 1 uur 1 uur: ontwikkeling van eigen

Nadere informatie

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen: Transit Herkent u het? Steeds dezelfde uitdagingen in migratieprojecten; meerdere variabelen, in verschillende stadia en in een blijvend veranderende omgeving, managen. Grote hoeveelheden gegevens over

Nadere informatie

Query SQL Boekje. Fredrik Hamer

Query SQL Boekje. Fredrik Hamer Query SQL Boekje Query SQL Boekje Fredrik Hamer Schrijver: Fredrik Hamer Coverontwerp: Fredrik Hamer ISBN: 9789402162103 Fredrik Hamer Inhoudsopgave A. Aanhef bepalen 17 Aantal 18 Aantal dagen tussen

Nadere informatie

Installatie SQL Server 2012

Installatie SQL Server 2012 Installatie SQL Server 2012 Download de SQL Server express net Advanced Services van de website: https://www.microsoft.com/en-us/download/details.aspx?id=29062 klik op Download. Als u een 64 bit variant

Nadere informatie

Software Test Plan. Yannick Verschueren

Software Test Plan. Yannick Verschueren Software Test Plan Yannick Verschueren November 2014 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 1 Inhoudstafel 1 Introductie 3 1.1

Nadere informatie

M Microsoft SQL Server 2008, Business Intelligence Development and Maintenance

M Microsoft SQL Server 2008, Business Intelligence Development and Maintenance M70-448 Microsoft SQL Server 2008, Business Intelligence Development and Maintenance Miles cursusprijs: 2.695,00 Miles Cursusduur: 6 klassikale lesdagen (normaal 9 lesdagen) Doorlooptijd: 6 weken; iedere

Nadere informatie

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep Inleiding Dit praatje gaat over Elasticsearch. De onderwerpen die aan bod komen:

Nadere informatie

Software Test Plan. Yannick Verschueren

Software Test Plan. Yannick Verschueren Software Test Plan Yannick Verschueren Maart 2015 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 2 December 2014 Yannick Verschueren

Nadere informatie

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam.

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam. Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam. Welke hoort in dit rijtje niet thuis? Weg- en waterbouw Huizen- en kantoorbouw Stedenbouw Auto- en vliegtuigbouw

Nadere informatie

Installatie SQL Server 2014

Installatie SQL Server 2014 Installatie SQL Server 2014 Download de SQL Server Express net advanced Services van de website: https://www.microsoft.com/en-us/download/details.aspx?id=42299 klik op Download. Als u een 64 bit variant

Nadere informatie

1. Databanken. Wat is een databank? Verschillende opslagmethodes

1. Databanken. Wat is een databank? Verschillende opslagmethodes 1. Databanken Wat is een databank? Verschillende opslagmethodes Tekst bestanden Spreadsheet Relationele gegevensbanken Relationeel model De gestandaardiseerde opvraagtaal SQL Beheer van een mysql databank

Nadere informatie

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50%

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% Naam project Lost And Found Animals Url Lokaal gehost Groepsleden Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% 1. Beveiliging in de toepassing Naam gebruiker Wachtwoord

Nadere informatie

Installatie SQL: Server 2008R2

Installatie SQL: Server 2008R2 Installatie SQL: Server 2008R2 Download de SQL Server 2008.exe van onze site: www.2work.nl Ga naar het tabblad: Downloads en meld aan met: klant2work en als wachtwoord: xs4customer Let op! Indien u een

Nadere informatie

Wie? Advanced Databases blok 4 2011. DB vs IR. Wat? Canonical application (DB) Canonical application (DB)

Wie? Advanced Databases blok 4 2011. DB vs IR. Wat? Canonical application (DB) Canonical application (DB) Advanced Databases blok 4 2011 Wie? Hans Philippi: docent/practicumleider René Kersten: assistent bij practicum Hans Philippi 1 2 Wat? DB vs IR 2005 XML (Siebes) 2007 Google ranking (Siebes) 2009/2011

Nadere informatie

Educagen. Wij zijn specialisten in Education en in Gen met een ervaring in consultancy en training van meer dan 20 jaar in de Gen-omgeving.

Educagen. Wij zijn specialisten in Education en in Gen met een ervaring in consultancy en training van meer dan 20 jaar in de Gen-omgeving. Educagen Wij zijn specialisten in Education en in Gen met een ervaring in consultancy en training van meer dan 20 jaar in de Gen-omgeving. Educagen leidt organisaties en hun medewerkers op om systemen

Nadere informatie

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous 2006-2007 Inhoudsopgave 1 2 1.1 Programmeertaal PHP5..................... 2 1.2 MySQL database......................... 3 1.3 Adobe Flash...........................

Nadere informatie

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober 2010. A. Snippe ICT Lyceum 1

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober 2010. A. Snippe ICT Lyceum 1 Workshop 3x Analytisch vermogen Huiswerk Lestijden 10:00 12:30 Pauze 10:15 10:30 Deze les: Hiëarchische database Relationele database ODBMS Normaliseer stappen Hiëarchische database Elk record in een database

Nadere informatie

Databanken - les 2.

Databanken - les 2. Databanken - les 2 joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost/dn/ Bv. tennisclub Onze tennisclub heeft een aantal spelers, die allemaal een uniek spelersnummer hebben. Soms krijgt een

Nadere informatie

Belangrijkste ideeën/concepten uit OS, incl. proces

Belangrijkste ideeën/concepten uit OS, incl. proces Operating System Overview (Hfst 2) Wat is een OS? Wat was een OS? Evolutie van OS. OS als virtuele machine OS als beheerder van hulpbronnen (resources) Belangrijkste ideeën/concepten uit OS, incl. proces

Nadere informatie

hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit relationele databases 9.1

hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit relationele databases 9.1 relationele databases 9.1 hoofdstuk 9 referentiële integriteit waarborgen overige constraints 9.1 Referentiële integriteit Als voorbeeld nemen we een eenvoudige database, bestaande uit twee tabellen. De

Nadere informatie

CareConnect Fin Pre-requirements

CareConnect Fin Pre-requirements Pre-requirements Inhoudstafel A. Algemeen... 3 B. Type installaties... 3 C. Hardware en software vereisten... 4 1. PC Clients... 4 2. Terminal Server Clients (Thin Clients)... 4 3. Server... 4 D. Operating

Nadere informatie

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

SQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC Aantekeningen IRDB Vak: IRDB > Infrma1ca Rela1nele DataBase Onderstaande database scripts zijn gebaseerd p PstgreSQL. Standaarden Schrijf SQL wrden al1jd in hfdlefers, k al werkt het met kleine lefers;

Nadere informatie

B.Sc. Informatica Module 4: Data & Informatie

B.Sc. Informatica Module 4: Data & Informatie B.Sc. Informatica Module 4: Data & Informatie Djoerd Hiemstra, Klaas Sikkel, Luís Ferreira Pires, Maurice van Keulen, en Jan Kamphuis 1 Inleiding Studenten hebben in modules 1 en 2 geleerd om moeilijke

Nadere informatie

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

ER-modeling. Wat is ER-modeling? ERD & relationeel model. ER-benadering DMO Datamodellering 2008 ER-modeling Datamodellering 2008 1 Wat is ER-modeling? ER-modelleren: top-down benadering bedacht door P. Chen 1976, paper in ACM Transactions on Database Systems Codd (Relationeel Model) aanvankelijk

Nadere informatie

ER-modeling. Datamodellering Wat is ER-modeling?

ER-modeling. Datamodellering Wat is ER-modeling? ER-modeling Datamodellering 2008 1 Wat is ER-modeling? ER-modelleren: top-down benadering bedacht door P. Chen 1976, paper in ACM Transactions on Database Systems Codd (Relationeel Model) aanvankelijk

Nadere informatie

Multi user Setup. Firebird database op een windows (server)

Multi user Setup. Firebird database op een windows (server) Multi user Setup Firebird database op een windows (server) Inhoudsopgave osfinancials multi user setup...3 Installeeren van de firebird database...3 Testing van de connectie met FlameRobin...5 Instellen

Nadere informatie

Databanken - les 2.

Databanken - les 2. Databanken - les 2 joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost/dn/ Samenvattend Probleemstelling ER-Diagramma Databank definitie Gegevens invoeren Gegevens opvragen Huiswerk! Practicum

Nadere informatie

Integriteitsbewaking bij een relationele database

Integriteitsbewaking bij een relationele database Integriteitsbewaking bij een relationele database Bij het ontwikkelen van een informatiesysteem voor een organisatie moet er koste wat koste voor gezorgd worden, dat er geen tegenstrijdige gegevens in

Nadere informatie

Zo kan je linken maken tussen je verschillende groepen van gegevens.

Zo kan je linken maken tussen je verschillende groepen van gegevens. 1 1. Entity Reference Entity Reference zal ook een onderdeel zijn van Drupal 8. Het is een module van het type veld. Het is een heel krachtige module die toelaat om referenties te maken tussen verschillende

Nadere informatie

Data Warehouse Script Generator Doel

Data Warehouse Script Generator Doel Data Warehouse Script Generator Doel Op basis van een aantal standaard sql scripts ( create table, create view ) een nieuwe sql script genereren welke alle objecten ( tables & views ) kan aanmaken in een

Nadere informatie

DRIVEN BY AMBITION SUCCESVOL EXACT IMPLEMENTEREN IN DE PRIVATE CLOUD

DRIVEN BY AMBITION SUCCESVOL EXACT IMPLEMENTEREN IN DE PRIVATE CLOUD DRIVEN BY AMBITION SUCCESVOL EXACT IMPLEMENTEREN IN DE PRIVATE CLOUD WOENSDAG 11 MEI INN STYLE, MAARSSEN Introduction Huub van Langerak Expert team Marc Eilander Expert team 3 Agenda Exact private cloud

Nadere informatie

Contents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation

Contents. Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation TeleBank Contents Introduction Problem Definition The Application Co-operation operation and User friendliness Design Implementation Introduction - TeleBank Automatic bank services Initiates a Dialog with

Nadere informatie

Oracle Multimaster Replicatie

Oracle Multimaster Replicatie Oracle Multimaster Replicatie Gedistribueerde databasesystemen Overal om ons heen hebben we te maken met gegevens. Veel van deze gegevens worden opgeslagen in database systemen. Om vanuit verschillende

Nadere informatie

Big Data en Testen samen in een veranderend speelveld. Testnet 10 april 2014 Paul Rakké

Big Data en Testen samen in een veranderend speelveld. Testnet 10 april 2014 Paul Rakké Big Data en Testen samen in een veranderend speelveld Testnet 10 april 2014 Paul Rakké Kernvraag Is het testen van Big Data omgevingen, applicaties en de data anders dan het testen van meer traditionele

Nadere informatie

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

Na bestudering van dit hoofdstuk moet je tot het onderstaande in staat zijn: 15. Toegangsbeheer Tot nu toe heb je gewerkt met DML en DDL statements. Echter de DCL statements zijn nog niet aan bod geweest. DCL commando s gebruik je voor de beveiliging van je database. Wie mag wat

Nadere informatie