Orde in de Chaos Een efficiënte manier van opslaan van de data die gebruikt wordt bij het visualiseren van geografische invloed op taalvariatie

Maat: px
Weergave met pagina beginnen:

Download "Orde in de Chaos Een efficiënte manier van opslaan van de data die gebruikt wordt bij het visualiseren van geografische invloed op taalvariatie"

Transcriptie

1 Orde in de Chaos Een efficiënte manier van opslaan van de data die gebruikt wordt bij het visualiseren van geografische invloed op taalvariatie E. Pieters S Eelse Versie 1.2 juni Inleiding Rijksuniversiteit Groningen Informatiekunde Collecting data is only the first step toward wisdom, but sharing data is the first step toward community. Henry Louis Gates Jr., IBM/Linux Commercials Elk onderzoek, in wat voor vorm dan ook, begint met data. Een biologisch onderzoek naar het gedrag van lepelaars begint met het verzamelen van observaties: data. Historisch onderzoek naar het doen en laten van keizer Karel V begint met het lezen van historisch materiaal: het verzamelen van data. Data is kennis, of eigenlijk de eerste stap die kant op volgens Henry Louis Gates Jr. Daarom zal data ook op een goede manier opgeslagen dienen te worden, op een manier waarop de data stabiel is doch goed te bereiken. Zo ook de data die bij dit bachelorscriptie project gebruikt is, het visualiseren van geografische invloed op taalvariatie. In hoofdstuk twee zal hier meer over uitgelegd worden. Centraal in deze paper staat de opslagmethode die gebruikt is voor de data in het project, en waarom er voor deze manier 1

2 gekozen is. Oftewel: hoe schept men orde in de chaos van data? Er zal gekeken worden naar de vraag, of de data efficiënt opgeslagen is, met minimalisering van redundantie en optimale beschikbaarheid. Dat wil zeggen, is de informatie zoals die opgeslagen zal worden goed te bereiken voor de andere deelprojecten. Voor de wereld van de E-Science is ook het bewaren van tussenresultaten een punt. In de toekomst zullen E-Science berekeningen naar verwachting steeds vaker door specialisten gedaan worden. Als bijvoorbeeld een geneticus informatie over taalafstanden wil zien, zou hij zich tot een specialistensite kunnen wenden. Om na te gaan of data daar vetrouwd kan worden, is het ook nuttig tussenresultaten te kunnen tonen, om inzage te krijgen in hoe data berekend is. Dit vereist een flexibel en geograniseerd data-beheer, iets wat een punt is om in het achterhoofd te houden. Tevens zal er een blik op de alternatieven geworpen worden, en beredeneerd worden waarom de hier beschreven manier de goede is, of in ieder geval een goede. Data kan namelijk uiteraard op verscheidene manieren opgeslagen worden, zoals later zal blijken. Ten slotte zal er een conclusie getrokken worden, met hopelijk antwoorden op deze vragen en eventueel stof tot nadenken voor de toekomst. 2 Het project Het uiteindelijke doel van het gehele bachelor-project is het visualiseren van geografische invloed op taalvariatie. Dat wil zeggen: iemand moet op een kaart visueel informatie over de taalvariatie binnen kunnen krijgen, en eventueel keuzes kunnen maken over welke informatie er wordt weergegeven. Bij het weergeven van informatie op een kaart, komt de term Geografisch Informatie Systeem (GIS) al snel om de hoek kijken. In de volgende paragraaf zal hierover meer uitgelegd worden. De rest van dit hoofdstuk zal gebruikt worden om kort en bondig het doel en de opzet van het project uit te leggen, zonder in teveel details te treden. 2.1 Geografische Informatie Systemen Sinds mensen kunnen rekenen en meten, wordt er land gemeten, en andere data over land en het gebruik ervan samengesteld. Te denken valt aan afmetingen van stukken grond en afstanden tussen plaatsen, maar ook indelingen van oppervlakten (zoals agrarisch, industriëel of commercieel) of 2

3 indeling van grondsoorten (zoals klei, veen, zand, löss en dergelijke). De hoeveelheid data die te verzamelen is over geografische objecten is schier oneindig. Visualiseren van dit soort ruimtelijke data gebeurde vroeger door het inkleuren van gebieden op kaarten, of het publiceren van onoverzichtelijke lijsten. Sinds laat in de 20e eeuw zijn er meer en meer mogelijkheden gekomen om ruimtelijke informatie digitaal op te slaan, te beheren, te bewerken, te analyseren en te presenteren. Een informatiesysteem waarmee dit kan, heet een Geografisch Informatie Systeem, een GIS. Peter A. Burrough geeft als definitie voor een GIS A powerful set of tools for collecting, storing, retrieving at will, transforming and displaying spatial data from the real world [3]. In feite is wat er nodig is voor dit project een GIS. Het doel is tenslotte om geografische invloed op taalvariatie in beeld te brengen, een GIS is daar uitermate geschikt voor. Maar een GIS kan niet zonder data om te analyseren, en ook niet zonder kaarten of coördinatenstelsel om de data op weer te geven. Op de data zelf zal later uitgebreid worden ingegaan (het is immers het uiteindelijke doel van dit deelproject de data efficiënt op te slaan en beheer ervan mogelijk te maken). Het is nuttig hier wel kort in te gaan op coördinaten en projecties. Het weergeven van ruimtelijke gegevens kan immers niet zonder informatie over waar welke gegevens geplaatst dienen te worden. In een gewoon, vlak, gebied zou men volstaan met een vierkant vlak met een afgesproken indeling voor X en Y-assen. De aarde heeft echter de onhebbelijke eigenschap niet vlak te zijn, maar (zo goed als) rond. Het gebruik van een X en Y-as in een vaste indeling (met kilometers) is op een globale schaal daarom niet aan te raden. Omdat de aarde rond is, is de gebruikelijke, globale, indeling er een in graden (met graden voor latitude en longitude)[3]. Er zijn verschillende manieren om onder het gebruik van graden uit te komen. Zo zijn er op kleinere gebieden, die relatief rechthoekig in te delen zijn omdat de bolling van de aarde er minder invloedrijk is, wel nauwkeurige, rechthoekige x,y projecties mogelijk. Voorbeeld hiervan is het Nederlandse Rijksdriehoekstelsel, een rechthoekige x, y indeling van Nederland met als referentiepunt de Onze Lieve Vrouwetoren in Amersfoort [8][23]. Andere indelingen zijn ruimschoots voorhanden[14][18][19], ook op meer globale schaal. 3

4 Dieper op dit onderwerp ingaan is voor dit project hier niet nodig, maar meer informatie is op het internet en in boeken ruim voorhanden. Het is wel belangrijk in een GIS goed na te denken over welke projectie, en welk coördinatenstelsel er gebruikt wordt. Deze moet goed afgestemd zijn voor het gebied waarmee gewerkt wordt, ten einde metingen (zoals geografische afstanden) om basis van de coördinaten zo nauwkeurig mogelijk te houden. 2.2 Dit Project Voor dit project maken wij gebruik van data die ook gebruikt is voor het vak Capita Selecta Natuurlijke Taalverwerking 2006, gegeven voor Informatiekunde studenten aan de Rijksuniversiteit Groningen[13]. Voor 186 plaatsen in Duitsland is voor elke plaats de uitspraak van inwoners die het lokale dialect van die plaats spreken in fonetisch schrift opgeschreven, en op basis hiervan zijn verschillen in de dialecten berekend op basis van een aantal woorden, in het plaatselijke dialect en tussen alle paren van dialecten. Dit onderzoek heeft een lijst van dialectafstanden opgeleverd voor elk paar van plaatsen. Deze dialectafstanden zijn berekend op basis van Levenshteinafstanden[7]. De gevonden afstanden zijn numeriek en prima met elkaar te vergelijken. Om de geografische invloed op de taalvariatie te bekijken, hebben wij gekozen voor het weergeven op een of andere manier van grenzen van taalgebieden, op basis van de dialectafstanden. Wat een bewezen methode is, is het zoeken en weergeven van barrières op basis van het zogenaamde Monmonieralgoritme[11]. Voor een implementatie van dit algoritme, is het nodig enige operaties uit te voeren op de data die we al hebben. Hier is meer over te lezen in het deelproject over de statistische operaties. Zoals blijkt uit het artikel van F. Manni (2004) over het vinden van barrières met behulp van Monmonier, en ook in de methode die Manni et al (2004) gebruiken in een vergelijkbaar onderzoek naar Nederlandse dialecten[12] is het de bedoeling eerst de grenzen van gebieden rond de plaatsen te vinden. Hiervoor worden zogenaamde Delaunay driehoeken en Voronoi-polygonen gebouwd[1][25]. Aangezien het in dit deelproject over de uiteindelijke data gaat, en het opslaan ervan, wordt daar hier verder niet over in detail getreden. Voor het bouwen van de driehoeken van de Delaunay methode, en de polygonen van het Voronoi algoritme, is het programma Triangle van Jonathan 4

5 Richard Shewchuk gebruikt[16]. In dit programma is de lijst plaatsen met hun coördinaten ingevoerd, en verwerking hiervan leverde twee nieuwe bestanden op: een met data over de lijnen van de Delaunay-driehoeken en een met data over de lijnen van de Voronoi-polygonen. De bestanden stonden in een formaat dat eigen is aan het programma, maar wel tekstbestanden zijn. De gegenereerde bestanden bevatten elk unieke identificatienummers voor elke lijn en referenties naar de 2 oorspronkelijke punten van elke lijn, in totaal 513 Delaunay-lijnen en 513 Voronoi-lijnen. Verder is er informatie over de 186 Duitse plaatsen zelf. Elke plaats heeft een plaatsnaam, een coördinaat op de X-as en een coördinaat op de Y-as. Verder heeft elke plaats een dialectafstand. Dit is de gemiddelde dialectafstand ten aanzien van het standaard-duits, berekend uit de dialectafstanden voor de verschillende woorden die in het eerdere taalproject berekend zijn. De geografische coördinaten staan in de Universele Transverse Mercator (UTM) projectie, zone 32 Noord (waaronder het grootste deel van Duitsland valt)[4][20]. Ten slotte is het nodig informatie over elk mogelijk paar plaatsen ( combinaties) op te slaan. Dit is informatie over geografische afstand (Euclidisch, dus hemelsbreed), onderling verschil in dialectafstand en resultaten van enkele wiskundige berekeningen, nodig om later barrières te kunnen onderscheiden. Hiervan is het residu de belangrijkste. Dit is het residu van een regressie analyse. Deze waarde is een weergave van hoever de plaatsen afzitten van de onderlinge dialectafstand zoals verwacht zou kunnen worden op basis van de geografische afstand. Het residu is, kortom, een graadmeter voor hoever de plaatsen verwijderd zijn van de verwachting voor hun onderlinge taalafstand. Er is voor gekozen om uiteindelijk de visualisatie via Mapserver te doen[10]. Dit is een computer applicatie waarmee in een webbrowser zoals Microsoft Internet Explorer of Firefox geografische informatie op een kaart kan worden getoond. Hierover kan in het deelproject over de daadwerkelijke visualisatie meer gelezen worden. Uiteindelijk is het de bedoeling dat een ieder zo goed mogelijk toegang heeft tot informatie, zonder onnodige handelingen toe hoeven verrichten. Degene die over de statistische kant van het project gaat, moet zijn gegenereerde data gemakkelijk kwijt kunnen en degene die gaat over het klaarmaken van 5

6 de data voor de uiteindelijke weergave moet gemakkelijk en overzichtelijk de data kunnen extraheren. 3 Bouwen van een structuur 3.1 De Data De uiteindelijke data waarmee gewerkt dient te worden is nu bekend. Er is een bestand met daarin de 186 Duitse plaatsen en hun coördinaten, en een bestand met gemiddelde dialectafstanden. Er is tevens een bestand met de gegevens van de Delaunay-lijnen en een bestand met de gegevens van de Voronoi-polygonen (beiden output van het programma Triangle). En er is een bestand met voor alle mogelijke plaatscombinaties de geografische afstand, de fonetische afstand (verschil in de dialectafstanden) en statistische informatie (waarvan het residu de belangrijkste is). Laatstgenoemde bestand omvat plaatscombinaties, twee keer zoveel als nodig. Het gebruikte programma heeft namelijk alle plaatsen met alle plaatsen vergeleken, wat inhoudt dat alle plaatsparen dubbel voorkomen. Tenslotte is in het visualisatieproject naar voren gekomen, dat teneinde de data duidelijk te kunnen maken aan de gebruiker, het handig is coördinaten voor labels te hebben. Er zijn als resultaat van deze vraag nog twee databestanden toegevoegd: een bestand met coördinaten voor labels bij Delaunay-lijnen, en een bestand met coördinaten voor labels bij Voronoi-lijnen. De gebruikte visuele software, Mapserver, laat informatie zien in verschillende lagen die op het scherm getoond kunnen worden. Elke laag is de facto een kaart, en elke kaart is onder de motorkap een zogenaamde shapefile. Dit is een soort bestand, waarin grafische data opgeslagen wordt als vectoren (met coördinaten). Zo zijn primitieve geometrische datatypen als punten, lijnen en polygonen op te slaan. Polygonen worden in dit verband opgeslagen als niets anders dan een aaneenschakeling van lijnen, die op elkaar aansluiten. Gekoppeld aan deze geometrische data is een tabel met daarin de eigenschappen en attributen van de vectoren. Eigenlijk bestaat een goed shapefile dus niet alleen uit een bestand met de daadwerkelijke vectoren, ook een bestand met info over die vectoren is nodig (en eigenlijk ook nog een bestand dat de index van de vectoren opslaat)[17][22]. De drie bestanden moeten voor de extentie, dezelfde naam dragen. 6

7 Voor dit deelproject is echter alleen het bestand met de eigenschappen en attributen van belang, aangezien de coördinaten van de Delaunay-lijnen en Voronoi-polygonen niet meer wijzigen, maar enkel met de andere informatie geschoven hoeft te worden. Dit is zo, omdat de Delaunay-lijnen en Voronoipolygonen gebaseerd zijn op de geografische coördinaten van de Duitse plaatsen waar de data verzameld is, en nergens anders op. En die coördinaten zullen onder geen voorwaarde wijzigen. 3.2 Mogelijkheden Waar gesproken wordt over data, en het opslaan ervan, heeft men het al snel over een database. Een database is in feite niets anders dan een verzameling data. Een database-systeem is een digitaal informatie systeem, waarmee data gedeeld en (efficiënt) georganiseerd kan worden[15]. Dat is precies wat de intentie van dit deelproject is, dus zal er een database gemaakt gaan worden. Het begrip database is nog heel breed, en het invullen van zo n database kan dan ook op verschillende manieren, waar zo meteen op teruggekomen zal worden. Er zijn enkele eisen waar de te gebruiken structuur aan moet voldoen: - De data moet stabiel opgeslagen worden, om zo weinig mogelijk complicaties in de verbinding met Mapserver te laten komen. - De data moet zo gecomprimeerd mogelijk opgeslagen worden, om ruimte en tijd te sparen (immers, datainteracties op het web gaan ten koste van de verbinding). - De data moet gemakkelijk toegankelijk zijn, om geprepareerd te kunnen worden. Dan kan het goed aan een shapefile gekoppeld worden zodat het in Mapserver op het beeldscherm getoond kan worden. Als we kijken naar wat de opties zijn, komen er slechts enkele reële opties boven water drijven: de data in een plat bestand opslaan, de data in een relationele database opslaan of dataopslag (en toegang) door middel van XML. Op elk van deze zal kort ingegaan worden Platte bestanden De eerstgenoemde optie, platte bestanden, is in feite ook de meest onpraktische. De data staat dan namelijk in een los bestand, zonder enige 7

8 verdere verbinding en controle op de structuur. De verzameling data die hier gebruikt wordt, is van redelijke proportie (denk aan de plaatscombinaties) en in een los (tekst)bestand is het overzicht dan gemakkelijk kwijt te raken. Het bestand zou van een zeer onhandige omvang zijn, en veel data zou onnodig meerdere keren herhaald worden. Denk hierbij bijvoorbeeld aan plaatsnamen en x- en y-coördinaten van de plaatsen die iedere keer dat een plaats voorkomt in een tweetal plaatsen, en dat zijn er nogal wat, opnieuw genoemd moeten worden. Bovendien is juist hierdoor opslag en extractie van data onnodig langzaam. Ook gebruik door meerdere gebruikers tegelijk kan hier voor problemen zorgen, omdat er geen softwarematige controle op platte bestanden rust[24]. En dat is niet handig bij een web-based applicatie zoals Mapserver, waar het zeker niet ondenkbaar is dat meerdere gebruikers tegelijk toegang tot de data zoeken. Dat, en het vooruitzicht op een moeilijk te benaderen databrij in een groot tekstbestand, is genoeg reden om deze optie geen verdere aandacht te schenken, hoewel gezegd dient te worden dat in een zeer kleinschalig project met kleine hoeveelheden aan data, platte bestanden zeer zeker van nut kunnen zijn XML database Wat ook een optie is, is met behulp van XML de data opslaan en beheren. XML staat voor Extensible Markup Language, en is een taal die iemand in staat stelt zijn eigen opmaak-regels voor documenten te ontwerpen. Met behulp van XML kun je dus je eigen documenten indelen, en informatie markeren[5]. Vraag is, of het geschikt is voor gebruik in deze context. En misschien breder gesteld, of XML in het algemeen geschikt is voor gebruik als database management systeem. Veel van de dingen die een normale database kan, kan ook met XML: opslag, interface, query-mogelijkheden. XML kent geen query-taal zoals SQL (Structured Query Language), wat in de meeste database systemen gebruikt wordt, maar wel vergelijkbare querymogelijkheden zoals Xpath[21]. Ook wordt er hard gewerkt aan een SQL-equivalent voor XML, Xquery. Ondersteuning van deze standaard laat echter nog te wensen over. Aan de andere kant is opslag met XML wel minder efficiënt, is ook hier het gebruik door meerdere gebruikers tegelijk lastig, is de dataintegriteit minder en heeft het minder mogelijkheden met betrekking tot indexeren. Het beveiligen van de data laat met XML ook nog te wensen over. XML is een prima optie voor omgevingen met een kleine hoeveelheid aan data, voor grotere hoeveelheden en met data die door meerdere gebruikers tegelijk gebruikt moet kunnen worden is XML minder geschikt[2]. 8

9 3.2.3 Relationele database In een relationele database wordt data zoveel mogelijk gescheiden in aparte tabellen, en daarna aan elkaar gelinkt zodat er toch sprake is van een geheel. Scheiding kan zo gedaan worden op basis van zogeheten entiteiten, die de grondslag voor de verschillende tabellen worden, en de eigenschappen of attributen van die entiteiten vormen de velden van de tabel. Data kan op deze wijze zoveel mogelijk gescheiden worden, en duplicatie van data geëlimineerd. Waarmee ook het risico op bijvoorbeeld schrijffouten minder wordt, aangezien een bepaalde waarde als het goed is maar een keer voorkomt in de database. Neem als voorbeeld een boek. Een boek heeft een schrijver en een ISDNnummer. In een relationele database zou je een tabel boek hebben, met daarin als aparte velden isdn, titel en schrijver en een tabel schrijver met velden voornaam, achternaam en adres. Omdat een schrijver meerdere boeken geschreven kan hebben, zou het kunnen dat er boeken in de tabel staan met dezelfde schrijver. In plaats van de hele schrijver nogmaals te noemen, zou het volstaan om het veld schrijver in tabel boek aan de tabel schrijver te koppelen, en in de tabel boek slechts een verwijzing naar de juiste ingang in de tabel schrijver te doen. Figure 1: voorbeeld relationele tabel boek Figure 2: voorbeeld relationele tabel schrijver Door in het veld schrijver slechts een verwijzing te plaatsen (tabel boek) 9

10 naar de juiste schrijver uit de tabel schrijver (tabel schrijver), voorkom je het meerdere malen moeten herhalen van alle gegevens van dezelfde schrijver, in dit geval Harry Mulisch. Data is uitstekend uit een relationele database te halen met behulp van de querytaal SQL, die uitermate geschikt is om te gebruiken in webbased applicaties[15]. Tevens zijn er ruimschoots programma s (database management systems) te krijgen waarmee een relationele database gemaakt en onderhouden kan worden, waaronder ook open-source De keuze Een relationele database lijkt in het geval van dit project de juiste. Het is de op dit moment gangbare datastructuur, en er zijn dan ook zeer veel mogelijkheden en programma s voor. Tevens is met behulp van SQL-queries gemakkelijk informatie uit de database te halen, en houdt een goed database management systeem controle over de data bij gebruikt door meerdere mensen tegelijk. Daar komt bij, dat gezien de hoeveelheid data een platte database waarschijnlijk zeer onoverzichtelijk en ontoegankelijk zou worden, net als een XML database. Bovendien, de efficiëntie van een XML-database laat nog te wensen over, zeker bij de hoeveelheid data die hier gebruikt wordt[2]. Een van de tabellen beslaat regels data. Een behoorlijke hoeveelheid, die met de betere indexeringsmogelijkheden van een relationele database gemakkelijker te structureren is. Data is dan toegankelijker, en sneller in te lezen. Mocht er in de toekomst data worden toegevoegd, of de hier voorgestelde structuur voor een vergelijkbaar groter project gebruikt worden, zal dit argument slechts aan kracht winnen. Zolang er geen alternatief is voor een efficiënte grote dataset in een XML-toepassing, is de keuze duidelijk in het voordeel van een relationele database gevallen. Het is nog nuttig, hier te verwijzen naar een discussie van E. Haimerl[6], waarin verder wordt ingegaan op in hoeverre de data voorberekend opgeslagen kan worden, en in hoeverre data zelf on-the-fly can worden berekend voor visualisatie. Het is niet nodig, er hier te diep op in te gaan, maar het is duidelijk dat data zoals kleuren van referentiekaarten en polygonen snel genoeg in realtime kan worden gedaan, terwijl meer wiskundige berekeningen (met name op grotere datasets) vaak beter van te voren berekend en opgeslagen kunnen worden. Haimerl stelt zelf een gemengde oplossing voor, 10

11 Figure 3: Entiteit Relatie Diagram waar informatie die voor visualisatie nodig is in een snelle hashtabel wordt gesteld, en data die niet tijdkritisch is en de database blijft. Het gaat echter te ver, daar hier meer mee te doen. De omvang van het hier gebruikte dataproject is niet omvangrijk genoeg om complexere, gemenge, datastructuren te rechtvaardigen. Beter is het, een overzichtelijk geheel te krijgen. Bovendien is een relationele database, en zeker het database management systeem waar hier voor gekozen is, mysql, meer dan snel en stabiel genoeg om de data voor webpublicatie ter beschikking te stellen. 3.3 Bouwen Als database management systeem is gekozen voor mysql, omdat dit programma een bewezen staat van dienst heeft als web-based database systeem, en een zeer gebruiksvriendelijke interactie heeft met scripttalen als PHP, waarmee gemakkelijk een SQL-query aan een mysql database gesteld kan worden. Importeren van data uit de bestanden die er al zijn zou geen problemen mogen opleveren. Omdat de resultaten van de statistische bewerking (de residu-waarden en dergelijke) een eenmalige berekening zijn, maar telkens weer nodig zijn bij het tonen van barrières, is besloten de data niet dynamisch (on the fly) door de visualisatiesoftware te laten doen, maar hard in de data mee op te slaan. Om te beginnen dient de data te worden opgesplitst in entiteiten, waaraan de attributen afzonderlijk gekoppeld kunnen worden. Vervolgens zullen de entiteiten gekoppeld kunnen worden. De volgende opzet is het resultaat (Figuur 3): Duidelijk te zien is een indeling van de data in zes tabellen. Er is ten 11

12 eerste een tabel voor de 186 plaatsen (allegro points; Figuur 4), waarin velden zijn ingeruimd voor een identificatienummer (ID), de plaatsnaam (PLAATS), de coördinaat op de X-as (X), de coördinaat op de Y-as (Y) en de gemiddelde dialectafstand (ALLEGRO AF). Het veld ID is ook het keyof sleutelattribuut, omdat dit een uniek nummer is en een uniek record er aan te herkennen is. Deze tabel vormt de kern van de database. Figure 4: voorbeeld uit tabel allegro points Tevens zijn er tabellen voor de Delaunay (figuur 5)- en Voronoi-lijnen (figuur 6; elk 513 records), met daarin ook identificatienummers (ID), een X- en een Y-coördinaat en referenties naar de twee plaatsen (REF0 en REF1) waar de lijnen aan geliëerd zijn. 12

13 Figure 5: voorbeeld uit tabel delaunay Figure 6: voorbeeld uit tabel voronoi Er is voor gekozen, om de coördinaten van de labels, gebruikt om informatie op de kaart in MapServer te tonen, in twee losse tabellen te doen. In aparte tabellen, omdat de data dan zo ver mogelijk uit elkaar gehaald, en het dubbel plaatsen van data praktisch onmogelijk gemaakt wordt. Dit zijn tabellen 6 en 7 (figuren 7 en 8), met beiden een kolom ID en kolommen X en Y voor de coördinaten. Figure 7: voorbeeld uit tabel delaunay labels Figure 8: voorbeeld uit tabel voronoi labels Ten slotte is er een tabel distances (figuur 9), die informatie over elk plaatsenkoppel bevat. Te weten een uniek identificatienummer voor ieder koppel (ID), referenties naar de twee plaatsen (PL 1 en PL 2) en de overige info (waaronder geografische afstand GEO AFST, onderlinge fonetische afstand 13

14 FON VERS en residu-waarde RESIDU). De basistabel bevat echter, zoals eerder genoemd, alle data dubbel. Handmatig aanpassen van de data zou, omdat het statische data betreft, zeker een optie zijn. Er is dan ook een SQL-statement op de tabel distances losgelaten om alle dubbele - en dus redundante - informatie eruit te filteren: DELETE * FROM distances WHERE PL 2 < PL 1; Dit SQL-statement verwijdert alle records waarvan het nummer van de PL 2 kleiner is dan de PL 1. Dus bijvoorbeeld het record met PL 1 2 en PL 2 1 is verwijderd, omdat record PL 1 1 en PL 2 2 er nog is, terwijl deze dezelfde informatie bevat. De tabel distances omvat, na de aanpassing, unieke records. Eventueel zou, om de structuur dynamischer en overzichtelijker te houden, de data van de kolommen GEO LOG, STD RES en PRED RES in een aparte tabel kunnen. Dit, omdat het niet direct nodige data is, maar eigenlijk tussenresultaten vormen van de eindberekening. Waarschijnlijk zou het de snelheid van het inlezen van de nodige data efficiënter maken. Het is hier niet gedaan, om het aantal tabellen te beperken en omdat de omvang van het project zelf ook relatief beperkt is. Wel blijkt hieruit, dat het apart opslaan van tussenresultaten geen slecht idee is voor grote datasets. Figure 9: voorbeeld uit tabel distances Hieruit valt af te leiden, dat bijvoorbeeld getuige tabel 5 delaunay-lijn 1 ligt tussen plaatsen 125 en 118. De plaatsen zijn dan weer op te zoeken in de tabel allegro points. Geen plaats wordt op deze wijze dubbel genoemd. Als men bijvoorbeeld een overzicht van alle Delaunay-lijnen wil krijgen, aangevuld met informatie over geografische afstand tussen de twee plaatsen van de lijn en de onderlinge dialectafstand, is met een SQL-statement 14

15 die tabel on the fly te produceren. Een voorbeeld voor zo n query is: SELECT de.*, di.geo AFST, di.fon VERS, di.residu FROM delaunay AS de, distances AS di, allegro points AS a WHERE de.ref0=a.id And di.pl 1=a.ID And di.pl 2=de.REF1 ORDER BY de.ref0; Deze query levert de tabel op, waarvan in figuur 10 een deel is weergegeven. Het uitvoeren ervan in mysql duurde seconden 1. De nieuwe tabel is opgebouwd met informatie uit de tabellen delaunay en distances. Figure 10: completere tabel met info over Delaunay-lijnen, gecreëerd door middel van een SQL-statement 4 Analyse Een gebruiker verwacht dat de data van zijn database integer en efficiënt is. Het normalisatie proces is een methode om dit te realiseren. Normalisatie is het proces waarmee een database wordt opgesplitst in meerdere tabellen, en er tussen deze tabellen relaties worden aangebracht zonder verlies van informatie. Normalisatie heeft de volgende voordelen: - De data is integer, omdat er geen fouten kunnen optreden bij het aanpassen van de data - Geen redundantie, hetgeen schijfruimte bespaart - De aangebrachte structuur zorgt ervoor dat er in verschillende perspectieven naar de data kan worden gekeken - Onderhoud wordt minder foutgevoelig Hiertoe zijn een aantal database normaalvormen opgesteld, eisen waaraan een goede relationele database moet voldoen[9]. Elke normaalvorm vereist 1 Op een pc met een AMD processor met 2 Gb intern geheugen. 15

16 ook, dat aan de voorgaande normaalvorm voldaan is. 1 e normaalvorm (1NV) Heeft betrekking op de vorm van de tabellen. Elk veld in een tabel bevat slechts één waarde (elk veld bevat atomaire data), en alle data in een bepaalde kolom zijn van hetzelfde type. Er is geen redundante informatie in attributen die geen sleutel zijn. Figure 11: Voorbeeldtabel met boeken en schrijvers Boek 2, het Fictief Boek, heeft twee schrijvers, die beiden in een enkel veld staan. Dit belemmert het goed terugvinden van het boek bij het zoeken naar een van beide auteurs. De namen van de auteurs zijn zelfs zelf al niet atomair. Sorteren op bijvoorbeeld achternamen van auteurs wordt zo erg lastig. Splitsen van data en het refereren van velden aan andere, relevante tabellen is de juiste manier om dit op te lossen. Onze database voldoet aan de 1e normaalvorm: alle data is gesplitst en de datatypen komen overeen. 2 e normaalvorm (2NV) De 2 e normaalvorm betreft, behalve het voldoen aan de 1 e normaalvorm, de functionele afhankelijkheid van de primaire sleutels. Geen van de attributen die geen sleutel zijn mogen afgeleid zijn van een deel van de sleutel, zodat de integriteit van de data behouden blijft. Een voorbeeld levert tabel 11 (figuur 12): Figure 12: voorbeeldtabel met beschouwingen van boeken 16

17 In dit geval, een tabel voor beschouwingen van boeken, zijn de velden isdn en schrijver id samen de sleutel (datgene, wat de objecten in de tabel uniek maakt). Het veld url schrijver, een link naar de website van de schrijver, is echter afhankelijk van de deelsleutel schrijver id, en niet van isdn en schrijver id samen. Het is geen attribuut van de review, geen attribuut van de unieke sleutel isdn en schrijver id samen. Om aan de 2NV te voldoen, zal het veld url schrijver in de tabel schrijvers moeten worden toegevoegd. Aangezien deze normaalvorm alleen betrekking heeft op sleutels die zijn opgemaakt uit meerdere velden, voldoet de database ook hieraan. De database heeft namelijk alleen maar enkelvoudige, unieke ID-velden als sleutels. 3 e normaalvorm (3NV) Om aan de 3 e normaalvorm te voldoen, mogen niet-sleutelattributen niet een feit zijn van een ander attribuut dat geen sleutel is. Een kolom mag niet afhankelijk zijn van een andere kolom, die op zijn beurt weer afhankelijk is van een sleutelattribuut. Figure 13: voorbeeld van tabel met informatie over schrijver Tabel 12 (figuur 13) toont ter voorbeeld een tabel met informatie over schrijvers. De kolommen plaatsnaam en provincie zijn echter niet afhankelijk van kolom schrijver id, welke hier de sleutel is. De postcode is wel gebonden aan de schrijver id. Maar als de postcode gewijzigd wordt, wijzigen ook de velden plaatsnaam en provincie. De tabel hier voldoet niet aan de 3e normaalvorm. Een aparte tabel voor postcodes zou hier uitkomst bieden, met voor elke postcode de plaatsnaam en provincie. De database voldoet ook aan deze vorm, daar de afhankelijkheden van de attributen slechts bij de sleutels liggen (dus: elk niet-sleutel attribuut is niet gebonden aan een ander niet-sleutel attribuut). De 4 e en 5 e normaalvormen zijn niet van belang voor deze database, de data is zover mogelijk opgesplitst en er hoeven geen meer-op-meer relaties 17

18 gentroduceerd te worden om redundantie te voorkomen. Op basis van de regels van de normalisatie, mag gesteld worden dat de database een goede, relationele database is. Er is geen redundantie, de data is zover mogelijk opgesplitst doch via SQL-statements goed te extraheren. En met het database management systeem mysql ook nog eens goed te beheren. Enige punt van bezwaar is mogelijk, behalve eerder genoemde tussenresultaten uit tabel distances, is dat de plaatsparen, zoals zij in de tabellen delaunay, voronoi en distances voorkomen, eigenlijk overal dubbel voorkomen. De tabellen bevatten referenties aan de plaatsen in de tabel allegro points, en zijn in die zin ook wel uniek. Alternatief is echter, om in plaats van in delaunay en voronoi voor alle paren aparte referenties naar elke plaats, directe referenties naar de tabel distances te maken. Er kan dan in zowel delaunay als voronoi een kolom uit, aangezien alle mogelijke plaatsparen ook al in de tabel distances voorkomen op een of andere manier. Onduidelijk is, of dit veel verschil maakt. Een kleine test, met nieuwe tabellen voor delaunay en voronoi met enkel referenties aan plaatsparen en label id s, wijst geen duidelijk snelheidsverschil aan, en visueel is het ook niet overzichtelijker. Het is daarom hier niet toegepast, maar voor toekomstige (grotere) projecten zeker de moeite van het overwegen waard. 5 Conclusie Nu komt het moment, dat er conclusies getrokken dienen te worden. Er is veel geschreven, maar zijn er ook daadwerkelijk antwoorden op de in de inleiding gestelde vragen? Is er orde geschept in de chaos van data? Dat er gekozen is voor een relationele database in mysql, is ondertussen duidelijk. Hiervoor is gekozen, omdat de alternatieven simpelweg niet toereikend waren. Zowel een plat bestand als een XML-oplossing hadden de met dit project gemoeide datastromen waarschijnlijk niet aangekund, door de voor grotere hoeveelheden data inefficinte werkwijze. Tevens is de relationele database de standaard voor dataverwerking. De querytaal SQL wordt zeer breed ondersteund, ook op het web (wat het extra interessant maakt voor de web-based visualisatie die bij het project gebruikt wordt). Dit maakt de data ook goed bereikbaar voor de andere deelprojecten. 18

19 De data is efficiënt opgeslagen, met geen redundantie. Ook dat is duidelijk geworden. De database voldoet aan alle relevante normaalvormen voor relationele databases, en redundantie is nihil. De testquery liep in iets meer dan 3 seconden, wat mijns inziens een acceptabele prestatie is. Waarbij echter wel een kanttekening moet worden gemaakt, dat de query liep op een verder onbelast systeem. Een vraag voor de toekomst is, of de database in de huidige opzet nog steeds acceptabel presteert bij een grotere belasting, zoals meerdere gebruikers tegelijk of extreem gecompliceerde SQL queries. Men mag aannemen dat de verwerkingstijden zullen oplopen in dat geval, maar slechts de tijd zal dit uiteindelijk leren. Wat ook duidelijk naar voren is gekomen, door middel van de normalisatieregels, is dat voor een efficiënte opslag van data in een relationele database, zoveel mogelijk opsplitsen van data de norm is. Ook maar de kleinste kans op redundantie moet voorkomen worden, en het lijkt dan handiger om meer tabellen te gebruiken en aan elkaar te linken dan minder tabellen te gebruiken en in beperkte mate data dubbel in te voeren. Een interessante vraag voor een vervolgonderzoek zou kunnen zijn, of het daadwerkelijk significant veel efficiënter is met meer tabellen en minder redundantie dan minder tabellen met enige redundantie, en in hoeverre dit uitmaakt. Wat is er dan nu bereikt? De data voor dit onderzoek is op een acceptabele manier opgeslagen en te bereiken voor de andere deelprojecten. De data is, kortom, klaar voor visualisatie. Maar meer nog dan dit specifieke project, is er wellicht een basis gelegd voor andere projecten. Er zijn ideeën opgedaan die ook in andere database-projecten van nut kunnen zijn. En misschien dat het een basis kan zijn voor discussie over de hier gebruikte database: nieuwe vragen kunnen om de hoek komen kijken, zoals: Is een andere indeling toch niet praktischer, met andere argumenten? Zoals, wat de verschillen die referenties naar plaatsparen in plaats van naar twee afzondelijke plaatsen in de tabellen voor delaunay en voronoi zijn in een grotere dataset. Zijn er alternatieven over het hoofd gezien? Hoe ontwikkelt XML zich als database systeem? Vooralsnog zijn er meer vragen gerezen, dan beantwoord. De ontwikkelingen op het gebied van datastructuren staan niet stil, hoewel structurele veranderingen zich vooralsnog niet aangekondigd hebben. Wat betreft de opslag van de data voor dit project is het voor nu klaar, de data hoeft slechts nog op de juiste manier geselecteerd en verwerkt te worden en de gebruiker kan zijn eigen conclusies over de geografische invloed op taalvariatie trekken. Maar dat is een heel ander verhaal. 19

20 References [1] Franz Aurenhammer. Voronoi diagrams a survey of a fundamental geometric data structure. ACM Computing Surveys, 23(3): , september [2] Ronald Bourret. rpbourret.com - xml consulting, writing and research. Website: Ronald Bourret, date visited: [3] Peter A. Burrough and Rachael A. McDonnell. Principles of Geographical Information Systems. Oxford University Press, [4] Steven Dutch. The universal transverse mercator system. Website: Natural and Applied Sciences, University of Wisconsin - Green Bay, date visited: [5] Peter Flynn. The xml faq. Website: Frequently-Asked Questions about the Extensible Markup Language, date visited: [6] Edgar Haimerl. Database design and technical solutions for the management, calculation and visualization of dialect mass data. Literary and Linguistic Computing, 21(4), [7] Wilbert Heeringa. Measuring Dialect Pronunciation Differences using Levenshtein Distance. PhD thesis, Rijksuniversiteit Groningen, [8] Kadaster. Publicatie rijksdriehoekmeting. Website: Kadaster Rijksdriehoekmeting, date visited: [9] William Kent. A simple guide to five normal forms in relational database theory. Communications of the ACM, 26(2): , Februari [10] Stephen Lime. Welcome to mapserver - umn mapserver. Website: Mapserver, date visited:

21 [11] F. Manni, E. Guérard, and E. Heyer. Geographic patterns of (genetic, morphologic, linguistic) variation: how barriers can be detected by monmonier s algorithm. Human Biology, 76(2): , date visited: [12] Franz Manni, Wilbert Heeringa, and John Nerbonne. To what extent are surnames words? comparing geographic patterns of surnames and dialect variation in the netherlands. to appear in:. Literary and Linguistic Computing, 21(4), [13] John Nerbonne. Allegro rules. Website: John Nerbonne - Allegro Rules, Rijksuniversiteit Groningen, nerbonne/teach/allegro-rules, date visited: [14] Dr. Michael Pidwirny. 2(a). introduction to maps. Website: PhysicalGeography.net - FUNDAMENTALS OF PHYSICAL GE- OGRAPHY - University of British Columbia Okanagan, date visited: [15] F.D. Rolland. The essence of databases. Harlow, [16] Jonathan Richard Shewchuk. Triangle: A two-dimensional quality mesh generator and delaunay triangulator. Website: Jonathan Richard Shewchuk - Computer Science Division University of California at Berkeley, quake/triangle.html, date visited: [17] Clint Steele. Usgs cmg shapefile definition. Website: Coastal & Marine Geology InfoBank - U.S. Department of the Interior and U.S. Geological Survey, date visited: [18] Unknown. Db2 universal database. Website: IBM DB2, date visited: [19] Unknown. Projections tutorial. Website: Manifold.net, userman/mfd50projections Tutorial.htm, date visited:

22 [20] Unknown. The universal transverse mercator (utm) coordinate system. Website: Warner College of Natural Resources - Colorado State University, info/nr502/lg3/datums coordinates/utm.html, date visited: [21] Unknown. Xpath tutorial. Website: W3 Schools, date visited: [22] Unknown. Esri shapefile technical description. Website: Esri.com, july date visited: [23] Afdeling Rijksdriehoeksmeting van het Kadaster and afdeling NAP van de Adviesdienst voor Geo-informatie en ICT (de voormalige Meetkundige Dienst) van Rijkswaterstaat. Welkom bij Website: RDNAP, date visited: [24] Rosemarie Wise. Database types, flat-file or relational? Website: Web Site Owner, date visited: [25] Prof. Vaagn Zakarian and Ravi Yelluripati. Implementation of delaunay and voronoi algorithms. Website: University of Colorado at Denver CSC Computational Geometry, rkyellur/5803, date visited:

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

Koppeling met een database

Koppeling met een database PHP en MySQL Koppeling met een database 11.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt

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

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

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

Dataconversie met Oracle Spatial

Dataconversie met Oracle Spatial Realworld klantendag 19 september 2013 Voorstellen 1 2 Computer Science & Engineering (TU/e) 3 Realworld Systems 4 Datamigraties Alliander Stedin Agenda 1 Architectuur Inleiding Ontwerp migratie 2 Rapportage

Nadere informatie

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

Microdataservices. Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt (VSLVIERKANTTAB)

Microdataservices. Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt (VSLVIERKANTTAB) Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt (VSLVIERKANTTAB) Datum:22 juni 2016 Bronvermelding Publicatie van uitkomsten geschiedt door

Nadere informatie

Entiteit Zaken en gebeurtenissen waarvan gegevens moeten worden vastgelegd worden een entiteit genoemd: b.v. mens, voorstelling, auto.

Entiteit Zaken en gebeurtenissen waarvan gegevens moeten worden vastgelegd worden een entiteit genoemd: b.v. mens, voorstelling, auto. Relationele databases SqlServer en Oracle zijn relationele client server databases. De verwerking van de opdrachten vindt plaats op de server. Access is een relationele pc database. De verwerking van de

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

In deze appendix wordt bekeken wat er moet gebeuren voordat

In deze appendix wordt bekeken wat er moet gebeuren voordat Normaliseren A In deze appendix wordt bekeken wat er moet gebeuren voordat een systeem kan worden gedefinieerd. Dit begint met een analyse van de gegevens die de basis vormen. Daarbij wordt gekeken naar

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

Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt niet gecoördineerd (VSLVIERKANTTAB)

Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt niet gecoördineerd (VSLVIERKANTTAB) Centrum voor Beleidsstatistiek en Microdata Services Documentatierapport Coördinaten van de vierkanten van 100x100 en 500x500 meter waarin een verblijfsobject valt niet gecoördineerd (VSLVIERKANTTAB) Datum:18

Nadere informatie

Waarom Access. In de onderstaande afbeelding ziet u een begin van de lijst met cliëntgegevens van de diëtiste.

Waarom Access. In de onderstaande afbeelding ziet u een begin van de lijst met cliëntgegevens van de diëtiste. Waarom Access Voor velen is het verschijnsel van de relationele database een brug te ver. Voor het opslaan en analyseren van gegevens neemt men zijn toevlucht tot Excel. Excel heeft inderdaad een uitgebreid

Nadere informatie

Normaliseren voor Dummies

Normaliseren voor Dummies Waarom normaliseren? Normaliseren voor Dummies Gegevensredundantie leidt tot gegevensinconsistentie! Dit cryptisch antwoord betekent het volgende: indien men dezelfde gegevens onnodig herhaaldelijk opslaat

Nadere informatie

Databases gebruiken. Databases gebruiken

Databases gebruiken. Databases gebruiken Databases gebruiken In deze module wordt van de kandidaat verwacht dat hij een goed begrip heeft van databases en aantoont competent te zijn in het gebruik van een database. Doel van de module De kandidaat:

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

Data Handling Ron van Lammeren - Wageningen UR

Data Handling Ron van Lammeren - Wageningen UR Data Handling 1 2010-2011 Ron van Lammeren - Wageningen UR Can I answer my scientific questions? Geo-data cycle Data handling / introduction classes of data handling data action models (ISAC) Queries (data

Nadere informatie

gravita PSUR-C conversie en import van relaties in PSU Relatiebeheer Algemeen

gravita PSUR-C conversie en import van relaties in PSU Relatiebeheer Algemeen gravita PSUR-C conversie en import van relaties in PSU Relatiebeheer Algemeen Het converteren van adres- en andere relatiegegevens in PSU Relatiebeheer, en wat dat betreft elke koppeling tussen verschillende

Nadere informatie

ibridge/andk the analyst s connection

ibridge/andk the analyst s connection ibridge/andk the analyst s connection ibridge / ANDK Uiteraard weet ú als criminaliteitsanalist als geen ander dat u met behulp van de Analyst s Notebook software analyseschema s handmatig kunt opbouwen

Nadere informatie

Gebruikershandleiding

Gebruikershandleiding Release 1.3 Gebruikershandleiding Datum: oktober 2012 All rights reserved Alle rechten zijn voorbehouden. Deze documentatie blijft eigendom van Ternair Software Solutions b.v. en is uitsluitend bedoeld

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

databases & SQL - antwoorden

databases & SQL - antwoorden informatica databases & SQL - antwoorden Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2010 Remie Woudt remie.woudt@gmail.com 2013 François Vonk (XAMP vervangen door USBWebserver

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

Les S-01: De basisbeginselen van SQL

Les S-01: De basisbeginselen van SQL Les S-01: De basisbeginselen van SQL 1.0 Relationele databases en SQL Een database is een bestand waarin gegevens worden opgeslagen in de vorm van tabellen. Zo kan een huisarts met behulp van een database

Nadere informatie

Systeemontwikkeling, Hoofdstuk 4, Tabellen maken in MS Access 2010

Systeemontwikkeling, Hoofdstuk 4, Tabellen maken in MS Access 2010 4 Tabellen maken in MS Access In dit hoofdstuk starten we met de bouw van ons informatiesysteem met de belangrijkste bouwstenen: de tabellen. 4.1 Starten met MS Access Als je het programma Microsoft Access

Nadere informatie

Excel Controller. Handleiding Excel Controller Wizard

Excel Controller. Handleiding Excel Controller Wizard Excel Controller Handleiding Excel Controller Wizard 1 Inhoud Inleiding... 3 Eigen SQL... 3 Stap 1 Eigen SQL... 3 Stap 2 Testen SQL... 8 Stap 3 Wizard... 11 Stap 4 Parameters... 13 Voorbeeld Eigen Parameter...

Nadere informatie

Deze zelfstudie maakt gebruik van de module Inlezen/Uitzetten. Opmerking: Deze zelfstudie kan niet worden uitgevoerd met LISCAD Lite.

Deze zelfstudie maakt gebruik van de module Inlezen/Uitzetten. Opmerking: Deze zelfstudie kan niet worden uitgevoerd met LISCAD Lite. * # $ + K @ Polygoon Netwerk Vereffening Uitvoeren Deze zelfstudie maakt gebruik van de module Inlezen/Uitzetten. Opmerking: Deze zelfstudie kan niet worden uitgevoerd met LISCAD Lite. Doelstelling Het

Nadere informatie

Structured Query Language (SQL)

Structured Query Language (SQL) Structured Query Language (SQL) Huub de Beer Eindhoven, 4 juni 2011 Database: in essentie 0 of meer tabellen elke tabel nul of meer kolommen (of velden) elke tabel nul of meer unieke rijen elke query werkt

Nadere informatie

Les 10 : Aanmaken van een database (deel2).

Les 10 : Aanmaken van een database (deel2). Les 10 : Aanmaken van een database (deel2). Wat is een database? Een centrale opslagruimte voor gegevens. Alle informatie wordt centraal opgeslagen en kan door iedereen geraadpleegd worden. Voordelen van

Nadere informatie

Gebruikers Handleiding

Gebruikers Handleiding Gebruikers Handleiding (De SQL module) Versie 2.14 Pagina 2 van 14 Versie 2.14 Inhoudsopgave NGP SQL...5 Het Menu... 6 De instellingen... 7 De database informatie... 9 Het Script... 10 Pagina 3 van 14

Nadere informatie

Portability, Interoperability of toch maar Connectivity Portability, Interoperability of toch maar Connectivity.

Portability, Interoperability of toch maar Connectivity Portability, Interoperability of toch maar Connectivity. Portability, Interoperability of toch 1 Even Voorstellen Diploma s: 1980 Bachelor of Science Civil Engineering (Cairo, Egypte) 1986 Doctoraal in Geodesie (TU Delft, Nederland) Enige Automatiseringservaring:

Nadere informatie

PROGRAMMA 2011-2012. Vak: informatica..

PROGRAMMA 2011-2012. Vak: informatica.. Vak: informatica.. Laag: Havo-. PROGRAMMA 2011-2012 week leerstof dagen toets overig 34-26.08 zomervakantie Bespreking PTA-404 Deze week: uitreiking van de Praktische Opdracht Programmeren Herhaling theorie

Nadere informatie

Meten is weten? Performance benchmark bij een geo-ict migratietraject

Meten is weten? Performance benchmark bij een geo-ict migratietraject Meten is weten? Performance benchmark bij een geo-ict migratietraject Student: Begeleiders: Professor: Sandra Desabandu (s.desabandu@zoetermeer.nl Edward Verbree (GIMA/TU Delft) en Pieter Bresters (CBS)

Nadere informatie

MA!N Rapportages en Analyses

MA!N Rapportages en Analyses MA!N Rapportages en Analyses Auteur Versie CE-iT 1.2 Inhoud 1 Inleiding... 3 2 Microsoft Excel Pivot analyses... 4 2.1 Verbinding met database... 4 2.2 Data analyseren... 5 2.3 Analyses verversen... 6

Nadere informatie

7. Het selecteren van gegevens

7. Het selecteren van gegevens 7. Het selecteren van gegevens 7.1. Inleiding Het doel van databases is het ontsluiten van gegevens. Een database wordt gebruikt om gegevens in op te slaan en te lezen. In dit hoofdstuk ga je door gebruik

Nadere informatie

Microdataservices. Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB)

Microdataservices. Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB) Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB) Datum:27 juni 2016 Bronvermelding Publicatie van uitkomsten geschiedt door de onderzoeksinstelling of de opdrachtgever op eigen

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

Cursus Access voor Beginners Hoofdstuk 2

Cursus Access voor Beginners Hoofdstuk 2 Cursus Access voor Beginners Hoofdstuk 2 Handleiding van Auteur: OctaFisH April 2011 handleiding: Cursus Access voor Beginners Hoofdstuk 2 Cursus Access voor Beginners Hoofdstuk 2 Auteur: OctaFisH In deze

Nadere informatie

Dit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag.

Dit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag. Voorbeeldproject Een Haagse SOA Dit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag. Aanleiding Vanuit de visie

Nadere informatie

BIM voor vergunningverlening. Resultaten technisch onderzoek

BIM voor vergunningverlening. Resultaten technisch onderzoek BIM voor vergunningverlening Resultaten technisch onderzoek Samenvatting IFC is bruikbaar voor automatisering vergunningverlening. IFC is bruikbaar voor het bijwerken van basisregistraties als BAG en BGT.

Nadere informatie

{button Installeer Zelfstudie Bestanden, execfile(seedatauk.exe,tutorial.ctb;tutorial nn.see)}

{button Installeer Zelfstudie Bestanden, execfile(seedatauk.exe,tutorial.ctb;tutorial nn.see)} Kringnet Vereffening Deze zelfstudie maakt gebruik van de module Vereffening. Opmerking: Deze zelfstudie kan niet worden uitgevoerd met LISCAD Lite. Doelstelling Het doel van deze zelfstudie is om te laten

Nadere informatie

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

1. * Database worden vaak gebruikt in Client-Server architectuur. Naam Studentnummer Klas Herkansing [ ] ja, nee [ ], zoja uit welk jaar? kernbegrippen relationele database Minimaal drie van de vijf vragen goed beantwoorden. 1. * Database worden vaak gebruikt in Client-Server

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

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling Databases SQL Leerjaar 1/2 ICT-Academie Niveau 4 Applicatie ontwikkeling Auteur: R. Meijerink Datum: Januari 2013 0. Inleiding Databases / SQL In deze lessen wordt je geleerd databases te bouwen in SQL-code.

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

Normaalvormen. DB kent vijf normaalvormen, elke strenger dan de vorige De eerste drie zijn veelgebruikt. ax 2 + bx + c =0

Normaalvormen. DB kent vijf normaalvormen, elke strenger dan de vorige De eerste drie zijn veelgebruikt. ax 2 + bx + c =0 Normalizatie Normaalvormen Speciale (liefst nuttige) vorm waarin iets geschreven kan worden + proces om die vorm te bereiken Bv. veeltermvergelijking van graad 2 heeft normaalvorm: ax 2 + bx + c =0 DB

Nadere informatie

Haza-21 Handleiding Thesaurus

Haza-21 Handleiding Thesaurus Haza-21 Handleiding Thesaurus versie 3.3 2 april 2012 Copyright 2011-2012 J.A.Diebrink te Burdaard. Alle rechten voorbehouden. Inhoudsopgave blz. 2 Inleiding... 3 Algemeen... 3 Toepassingen in Haza-21...

Nadere informatie

SQL SERVER 2008. Werking van Database Snapshots

SQL SERVER 2008. Werking van Database Snapshots KATHOLIEKE HOGESCHOOL KEMPEN GEEL SQL SERVER 2008 Werking van Database Snapshots ELINE STEYVERS BRAM DE SMEDT JOEY LEMMENS WOORD VOORAF Werking van Database Shapshots is bedoeld om mensen wegwijs te maken

Nadere informatie

Technisch Rapport. BAG Extract in i-bridge2.0. Versie 1.0. Datum 9 December 2010

Technisch Rapport. BAG Extract in i-bridge2.0. Versie 1.0. Datum 9 December 2010 Technisch Rapport BAG Extract in i-bridge2.0 Versie 1.0 Datum 9 December 2010 Status Final Colofon IVENT A&A CDC Madame Curielaan 4-6 Postbus 20703 2289 CA Rijswijk Contactpersoon Patrick Brooijmans Teamleider

Nadere informatie

NIS Notarieel Informatie Systeem

NIS Notarieel Informatie Systeem NIS UPDATE RELEASE Q2-2014 NIS Notarieel Informatie Systeem Sportlaan 2h, 818 BE Heerde T (0578) 693646, F (0578) 693376 www.vanbrug.nl, info@vanbrug.nl 2014 Van Brug Software B.V. Niets uit deze opgave

Nadere informatie

Geografische invloed op taalvariatie

Geografische invloed op taalvariatie Geografische invloed op taalvariatie J. Wouda juni 2006 1 Inleiding Rijksuniversiteit Groningen Informatiekunde Een dialectologisch axioma is, dat geografische informatie tot op zekere hoogte ligt besloten

Nadere informatie

AFO Vergelijken van documenten

AFO Vergelijken van documenten AFO 114 - Vergelijken van documenten 114.1 Inleiding Met behulp van AFO 114 kunt u titelbeschrijvingen vergelijken als voorbereiding op het samenvoegen van gelijke records. Gebruik deze AFO voor: Het opsporen

Nadere informatie

1 Download de database 'bieren.mdb' en bewaar het bestand in c:\werkmap van je computer.

1 Download de database 'bieren.mdb' en bewaar het bestand in c:\werkmap van je computer. DataBase Management & Databasetechnologie We gaan nu aan de slag met het databasemanagementprogramma Access. Zo'n set programma's waarmee je databases kunt maken, beheren en bevragen noemt men ook wel

Nadere informatie

Tools voor canonieke datamodellering Bert Dingemans

Tools voor canonieke datamodellering Bert Dingemans Tools voor canonieke datamodellering Tools voor canonieke datamodellering Bert Dingemans Abstract Canonieke modellen worden al snel omvangrijk en complex te beheren. Dit whitepaper beschrijft een werkwijze

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

Hoofdstuk 16: Grafieken en diagrammen: hoe

Hoofdstuk 16: Grafieken en diagrammen: hoe Hoofdstuk 16: Grafieken en diagrammen: hoe 16.0 Inleiding Wanneer je de betekenis van een serie nummers in een presentatie wilt weergeven, zal je ondervinden dat een diagram de meest effectieve manier

Nadere informatie

Een Artikel Schrijven. Prof. dr. Paul A. Kirschner Coördinator Onderzoek

Een Artikel Schrijven. Prof. dr. Paul A. Kirschner Coördinator Onderzoek Een Artikel Schrijven Prof. dr. Paul A. Kirschner Coördinator Onderzoek Met dank aan 1. Writing Scientific Manuscripts (Journal of Young Investigators) 2. S. Downes: How to publish a scientific paper 3.

Nadere informatie

Cover Page. The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation.

Cover Page. The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation. Cover Page The handle http://hdl.handle.net/1887/20358 holds various files of this Leiden University dissertation. Author: Witsenburg, Tijn Title: Hybrid similarities : a method to insert relational information

Nadere informatie

Handleiding TWYSK Risicotool. Online webapplicatie voor het vastleggen en beheren van risico-informatie

Handleiding TWYSK Risicotool. Online webapplicatie voor het vastleggen en beheren van risico-informatie Handleiding TWYSK Risicotool Online webapplicatie voor het vastleggen en beheren van risico-informatie Handleiding Twysk risicotool De Twysk risicotool is in opdracht van Twynstra Gudde ontwikkeld als

Nadere informatie

Hoofdstuk. Access wordt ook wel een elektronische kaartenbak. Access 2013, wat kunt u ermee?

Hoofdstuk. Access wordt ook wel een elektronische kaartenbak. Access 2013, wat kunt u ermee? Access 2013, wat kunt u ermee? Access wordt ook wel een elektronische kaartenbak genoemd. Anderen noemen het een programma om een relationele database mee te beheren. De vergelijking met een kaartenbak

Nadere informatie

ZOEKHULPEN EN SELECTIEVARIANTEN

ZOEKHULPEN EN SELECTIEVARIANTEN SAP/SLM Tips & Trucs SAP ALGEMEEN 1) Transactiecodes tonen in menu 2 2) Drop down lijstjes op alfabet en met code 3 3) Standaardtabblad instellen Studiedossier / Stamgegevens 4 4) Alle schermen in één

Nadere informatie

Kies File>New>Blank Page>PHP. Je kunt eventueel nog een stylesheet koppelen. Definieer nu eerst een site! Dat betekent: Site>New Site

Kies File>New>Blank Page>PHP. Je kunt eventueel nog een stylesheet koppelen. Definieer nu eerst een site! Dat betekent: Site>New Site Kies File>New>Blank Page>PHP Je kunt eventueel nog een stylesheet koppelen. Definieer nu eerst een site! Dat betekent: Site>New Site Geef de site een passende naam. Kies ook de juiste map voor de webdocumenten.

Nadere informatie

Technische nota AbiFire Rapporten maken via ODBC

Technische nota AbiFire Rapporten maken via ODBC Technische nota AbiFire Rapporten maken via ODBC Laatste revisie: 23 januari 2018 Inhoudsopgave 1 Inleiding... 2 2 Systeeminstellingen in AbiFire... 3 2.1 Aanmaken extern profiel... 3 2.2 Toewijzing extern

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

BEFDSS. Het Belgische uitwisselingsformaat voor onderzoekgegevens afkomstig van visueel rioolonderzoek. 1/12/2006 1 / 6

BEFDSS. Het Belgische uitwisselingsformaat voor onderzoekgegevens afkomstig van visueel rioolonderzoek. 1/12/2006 1 / 6 Het Belgische uitwisselingsformaat voor onderzoekgegevens afkomstig van visueel rioolonderzoek. 1/12/2006 1 / 6 Inhoudstafel... 1 1 Voorwoord... 3 2 De samenstelling van het uitwisselingsformaat... 4 3

Nadere informatie

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( )

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( ) Aantekeningen voor 5.0 (20161128) Opgeloste problemen: In module Projection: RD x,y,h, geographic wordt het inlezen van een file met X,Y,H coordinaten niet goed verwerkt. De beperkingen zoals beschreven

Nadere informatie

ExpertHandboek Business Intelligence met Power BI in Excel Wim de Groot

ExpertHandboek Business Intelligence met Power BI in Excel Wim de Groot ExpertHandboek Business Intelligence met Power BI in Excel Wim de Groot Van Duuren Media, ISBN 9789463560665 Inhoud Voorwoord 1. Goed beginnen Voor wie is dit boek bedoeld? Werken met dit boek Afspraken

Nadere informatie

Working with Terrain Data

Working with Terrain Data Working with Terrain Data QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Dick Groskamp This work is licensed under a Creative Commons Attribution 4.0 International

Nadere informatie

Handleiding inlezen Obsurv WFS / WMS in QGIS

Handleiding inlezen Obsurv WFS / WMS in QGIS Handleiding inlezen Obsurv WFS / WMS in QGIS Definitief Grontmij Nederland B.V. De Bilt, 20 oktober 2015 Verantwoording Titel : Handleiding inlezen Obsurv WFS / WMS in QGIS Subtitel : Projectnummer : Referentienummer

Nadere informatie

Inhoud. Endnote X7 Handleiding Mediacentrum maart 2015 Page 2

Inhoud. Endnote X7 Handleiding Mediacentrum maart 2015 Page 2 Inhoud Over Endnote... 3 Endnote installeren... 4 Een library aanmaken... 5 Voordat je begint!... 6 Tussenvoegsels in namen... 6 Referenties invoegen in een Worddocument/Cite while you write... 7 Handmatig

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

Referentieniveaus uitgelegd. 1S - rekenen Vaardigheden referentieniveau 1S rekenen. 1F - rekenen Vaardigheden referentieniveau 1F rekenen

Referentieniveaus uitgelegd. 1S - rekenen Vaardigheden referentieniveau 1S rekenen. 1F - rekenen Vaardigheden referentieniveau 1F rekenen Referentieniveaus uitgelegd De beschrijvingen zijn gebaseerd op het Referentiekader taal en rekenen'. In 'Referentieniveaus uitgelegd' zijn de niveaus voor de verschillende sectoren goed zichtbaar. Door

Nadere informatie

Centrum voor Beleidsstatistiek en Microdata Services. Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB)

Centrum voor Beleidsstatistiek en Microdata Services. Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB) Centrum voor Beleidsstatistiek en Microdata Services Documentatierapport X- en Y-coördinaten van een verblijfsobject (VSLCOORDTAB) Datum: 7 oktober 2015 Bronvermelding Publicatie van uitkomsten geschiedt

Nadere informatie

Omzeil het gebruik van mappen en bestanden over Wiki s en het werken in de 21 e eeuw

Omzeil het gebruik van mappen en bestanden over Wiki s en het werken in de 21 e eeuw Omzeil het gebruik van mappen en bestanden over Wiki s en het werken in de 21 e eeuw In de whitepaper waarom u eigen documenten niet langer nodig heeft schreven we dat het rondmailen van documenten geen

Nadere informatie

[TOETS SQL INLEIDING]

[TOETS SQL INLEIDING] 2011 ROC ter AA afdeling T&T Team ICT Toets SQL Inleiding Duur: 100 minuten Hulpmiddelen: Alleen Pen en Papier Er is één voorblad en vijf opgaven pagina s. Normering: Deel I: 14 punten (7x2 Deel II: 10

Nadere informatie

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( )

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( ) Aantekeningen voor 5.0 (20180501) De preferences schermen voor de file in-uitvoer zijn gewijzigd. Zowel de lay-out als een aantal benamingen is aangepast. Tevens is er een optie bijgekomen voor de standaard

Nadere informatie

3.4 Een Hoofd/subformulier maken zonder de hulp van de wizard.

3.4 Een Hoofd/subformulier maken zonder de hulp van de wizard. 3.4 Een Hoofd/subformulier maken zonder de hulp van de wizard. U kunt natuurlijk ook zonder een wizard een hoofd/subformulier maken. U heeft dan meer vrijheid in het ontwerp. In grote lijnen dient u dan

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

11. Het selecteren van gegevens deel II

11. Het selecteren van gegevens deel II 11. Het selecteren van gegevens deel II 11.1. Inleiding In hoofdstuk 7 heb je kennis gemaakt met het statement Select. In dit hoofdstuk ga je wat dieper in op het statement. Je gaat sorteren / groeperen

Nadere informatie

Handleiding voor Zotero versie 2.0

Handleiding voor Zotero versie 2.0 Handleiding voor Zotero versie 2.0 Michiel Wolda De handleiding voor Zetero is geschreven voor de lezers van het boek Deskresearch: Informatie selecteren, beoordelen en verwerken: tweede editie (Van Veen

Nadere informatie

Voornaamste toepassing : genereren van output en het bouwen van lijsten voor bestandsbeheer Is direct met Office gelinkt Kan data exporteren in

Voornaamste toepassing : genereren van output en het bouwen van lijsten voor bestandsbeheer Is direct met Office gelinkt Kan data exporteren in VUBIS Sm@rt SSP SSP : algemeen (1) Voornaamste toepassing : genereren van output en het bouwen van lijsten voor bestandsbeheer Is direct met Office gelinkt Kan data exporteren in verschillende formaten

Nadere informatie

Inhoudsopgave Voorwoord 9 Nieuwsbrief 9 Introductie Visual Steps 10 Wat heeft u nodig? 11 Hoe werkt u met dit boek?

Inhoudsopgave Voorwoord 9 Nieuwsbrief 9 Introductie Visual Steps 10 Wat heeft u nodig? 11 Hoe werkt u met dit boek? Inhoudsopgave Voorwoord... 9 Nieuwsbrief... 9 Introductie Visual Steps... 10 Wat heeft u nodig?... 11 Hoe werkt u met dit boek?... 12 Uw voorkennis... 13 De volgorde van lezen... 14 De schermafbeeldingen...

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

2.2 Een tabel ontwerpen

2.2 Een tabel ontwerpen 2.2 Een tabel ontwerpen 2.2.1 Gegevens analyse Alvorens de tabellen van een database te kunnen gaan opzetten, dient u eerst te bepalen, welke gegevens daarin moeten worden opgenomen. Bepaal eerst het doel

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

3. Structuren in de taal

3. Structuren in de taal 3. Structuren in de taal In dit hoofdstuk behandelen we de belangrijkst econtrolestructuren die in de algoritmiek gebruikt worden. Dit zijn o.a. de opeenvolging, selectie en lussen (herhaling). Vóór 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

Rapportage: asbestinventarisatie

Rapportage: asbestinventarisatie Rapportage: asbestinventarisatie Readaar B.V. Maliestraat 3 3581 SH Utrecht KvK: 66239974 BTW: 856.457.760.B01 T: 06 54914858 E: contact@readaar.com W: www.readaar.com Datum: 20 november 18 Geachte heer,

Nadere informatie

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten.

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten. MySQL talk Trage website? Het optimaliseren van een bestaande website die een MySQL database heeft is niet altijd even makkelijk. Het probleem kan namelijk op veel verschillende plekken zitten: de database

Nadere informatie

Microdataservices. Documentatierapport Numerieke postcode van een verblijfsobject (VSLPOSTCODEBUS)

Microdataservices. Documentatierapport Numerieke postcode van een verblijfsobject (VSLPOSTCODEBUS) Documentatierapport Numerieke postcode van een verblijfsobject (VSLPOSTCODEBUS) Datum:21 juni 2016 Bronvermelding Publicatie van uitkomsten geschiedt door de onderzoeksinstelling of de opdrachtgever op

Nadere informatie

Gebruik van verschilbestanden

Gebruik van verschilbestanden Gebruik van verschilbestanden Inhoud Gebruik van verschilbestanden 1 Inhoud 2 1 Verschilbestanden 3 1.1 Inleiding 3 1.2 Bestanden en identificatoren 3 1.3 Onderzoeken waar de actuele versie verschilt van

Nadere informatie

Databases SQL - meerdere tabellen

Databases SQL - meerdere tabellen Databases SQL - meerdere tabellen Nut van een database Dilbert 1 Reservering Lezer Uitgave Filiaal Basis zaken Uitlening Exemplaar NB: er kan verschil in smaak zitten tussen M1a en S1a notatie Join : het

Nadere informatie

Technische nota AbiFire5 Rapporten maken via ODBC

Technische nota AbiFire5 Rapporten maken via ODBC Technische nota AbiFire5 Rapporten maken via ODBC Laatste revisie: 29 juli 2009 Inhoudsopgave Inleiding... 2 1 Installatie ODBC driver... 2 2 Systeeminstellingen in AbiFire5... 3 2.1 Aanmaken extern profiel...

Nadere informatie

Technisch Ontwerp W e b s i t e W O S I

Technisch Ontwerp W e b s i t e W O S I Technisch Ontwerp W e b s i t e W O S I WOSI Ruud Jungbacker en Michael de Vries - Technisch ontwerp Website Document historie Versie(s) Versie Datum Status Omschrijving / wijzigingen 0.1 20 nov 2008 Concept

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

Arcade-toepassingen in ArcGIS Pro

Arcade-toepassingen in ArcGIS Pro Arcade-toepassingen in ArcGIS Pro Stel, we hebben het volgende scherm in ArcGIS Pro: Via de labelopties bestaat de mogelijkheid om een expressie toe te voegen. Zodra we de expressie $Feature.Straatnaam

Nadere informatie

Inhoud. Mediacentrum hogeschool Windesheim (maart 2015) Page 2

Inhoud. Mediacentrum hogeschool Windesheim (maart 2015) Page 2 Online Inhoud Over Endnote Online... 3 Aanmelden... 3 Voordat je begint!... 4 Tussenvoegsels in namen... 4 Referenties invoegen in een Worddocument/Cite while you write... 5 Handmatig invoeren van referenties...

Nadere informatie

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( )

Release notes PCTrans. Release notes PCTrans. Aantekeningen voor PCTrans 5.0 ( ) Aantekeningen voor 5.0 (20170322) Opgeloste problemen: In module Geographic transformation: ETRS89 ITRS wordt de nauwkeurigheid verkeerd ingesteld. In alle ETRS/ITRS/WGS84 modules wordt bij opgeven van

Nadere informatie

Catalogger 9.0 features

Catalogger 9.0 features features Catalogger software maakt het onderhouden van productassortimenten en het genereren van catalogi steeds eenvoudiger. Versie 9.0 zit vol met nieuwe features en verbeteringen. Vanaf nu is er Unicode

Nadere informatie