XML and databases 246
|
|
- Aku Aaltonen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 XML and databases 246
2 A three-tier model of application development: Tier 1: a Web browser or a client application Tier 2: a Web server or an application server Tier 3: a database system or a transaction system Tier 1 HTML/ Tier 2 XML e.g., a client application e.g., application running in Tomcat e.g., a JDBC query result set Tier 3 e.g., RDBMS Java provides a common API called Database Connectivity (JDBC) for accessing a data base system. It provides a highlevel interface for database interactions. 247 Sekä internet- että intranetympäristöissä hajautettujen järjestelmien toteutuksessa on yleisesti käytetty kolmikerrosmallia, joka koostuu seuraavista toiminnallisista yksiköistä: Kerros 1: selain, joka toimiin käyttöliittymänä Kerros 2: Web-palvelimella oleva sovellusohjelma Kerros 3: tietokanta (tai esim. transaktiopalvelut) Vastaavaa mallia käytetään myös Web-palvelukonseptissa erityisesti silloin kun sovellukset (Webpalvelut) käyttävät erillistä tietokantaa. Tällöin asiakasohjelma voi Web-selaimen ohella edustaa ensimmäistä kerrosta. Web-palvelimella sijaitseva palvelu edustaa toista kerrosta. Tietokanta puolestaan edustaa kolmatta kerrosta kuten edellä esitetyssä mallissakin. Tietokanta itsessäänkin voi tarjota Web-palvelun toiminnallisuuden. Tietokantainteraktioiden toteuttamiseksi (esim. kyselyt) on tarjolla korkean tason rajapintoja. Esimerkiksi Java tarjoaa Database Connectivity (JDBC) APIn tähän tarkoitukseen. JDBC on osana (standardi-) JDK:ta. Se tarjoaa esimerkiksi rajapinnan SQL-kyselyille. Useat tietokannat tarjoavat JDBC-ajureita, jotka toteuttavat ko. API:n. Nämä ajurit muuttavat JDBC-operaatiot natiivioperaatioiksi, mutta eivät kaikissa tapauksissa toteuta kaikkia JDBC:n piirteitä. Tällä kurssilla ei käsitellä JDBC API tai muutakaan vastaavaa APIa vaan keskitytään lähinnä siihen problematiikkaan, joka koskee XML-pohjaisen tiedon tallettamista tietokantaan. Aiheesta voi opiskella lisää esim. osoitteessa josta löytyy kattava ja päivitetty selvitys aiheeseen. Tätä lähdettä on käytetty hyväksi myös tätä kurssimateriaalia (luku XML and databases ) kehitettäessä.
3 Storing XML-based data in databases 1. Storing an XML document as a structured document an XML (or SGML) native database no need to design mappings between an XML document and tables storing, retrieval, and quering using standard methods XPath and XQuery 2. Storing an XML document as a DOM tree object Object-Oriented Database (OODB) systems can be used no need to design mappings between an XML document and tables pointing using XPath with possible extensions 248 Seuraavaksi käsitellään kolmea tietokantatyyppiä XML-pohjaisen tiedon tallentamisen kannalta: natiivi XML-tietokanta, oliotietokanta ja relaatiotietokanta. Talletettaessa natiiviin XML-tietokantaan, XML-dokumentin sisällölle ei tarvitse tehdä muutoksia. Kyselyitä ko. tietokannasta voidaan tehdä esimerkiksi XML-pohjaisen tiedon käsittelyyn tarkoitetuilla kielillä kuten XPath. XML-tietokannasta voidaan tehdä kyselyitä myös käyttäen template-pohjaisia (template on XML-dokumentti, joka sisältää kyselyn) kyselykieliä kuten XQuery. Tällaiset kyselykielet ovat usein hyvin joustavia. Talletettaessa XML-dokumentin tieto oliotietokantaan ei sille myöskään tarvitse muutoksia. Tällöin DOM-puu voidaan tallettaa sellaisenaan. Tietoalkioihin osoittaminen tapahtuu tässäkin XPath-kielen avulla.
4 Storing XML-based data in databases 3. Storing an XML document as a set of relational tables in a relational database management system (RDBMS) mappings needed between an XML document and tables (XML is semi-structured data) retrieving data from a RDBMS an application-specific query language XPath + possible extensions XPath expressions can also be converted to SQL queries XQuery Structured Query Language (SQL) 249 Kolmas tapa on tallettaa XML-pohjainen tieto relaatiotietokantaan. Jatkossa keskitymme tähän vaihtoehtoon. Tällöin XML-dokumentin sisältö (ja joissain tapauksissa osa merkkauksesta) talletetaan tavalla tai toisella - relaatiotietokannan tauluihin. Tähän liittyvät ongelmat (joihin palaamme myöhemmin) johtuvat periaatteessa siitä, että XML on osittain rakenteista (semi-structured) tietoa. Osittain rakenteisella tiedolla tarkoitetaan tässä karkeasti ottaen tietoa, jolle täsmällisen ja tarkan skeeman määrittäminen on vaikeaa tai mahdotonta. XML esimerkiksi sallii iteroinnin mielivaltaiselle määrälle elementtejä (mikäli niin halutaan määritellä). Tällainen joustavuus tekee joissain tapauksissa vaikeaksi kuvata XML-pohjaista tietoa relaatiotietokannan taulujen avulla (tai päinvastoin). Lisäksi elementtien, jotka sisältävät sekä merkkidataa että elementtejä (mixed content), sisältö on usein hankalaa tallettaa relaatiotietokannan tauluihin. Kyselyitä relaatiotietokannasta voidaan tehdä esimerkiksi JDBC:n kaltaisella kyselykielellä (JDBC on toki muutakin kuin kyselykieli). Joissain tapauksissa voidaan käyttää myös XPath-kieltä. Sen ilmaisut voidaan konvertoida myös SQL-kyselyiksi. Tällöin voidaan usein myös käyttää XPath-ilmaisuihin perustuvaa XQuery-kieltä.
5 Choosing a DBMS Storing document-centric information data is of coarse granuality and has irregular structure the smallest data item can be an element with mixed content or even the whole document itself the order of elements is typically important examples: books, s,.. OODBs and XML databases could be used 250 Tietokantaratkaisua valittaessa yksi peruskysymys koskee XML-muotoisen informaation luonnetta. Tällöin tehdään usein ero dokumenttikeskeisen ja datakeskeisen informaation välillä. Dokumenttikeskeinen tieto on usein rakenteeltaan epäsäännöllistä ja talletettu tietosisältö on karkeajakoista. Esimerkiksi kirjaa tai artikkelia koskeva tieto voidaan tallettaa hyvinkin vähäisellä merkkauksella. Tällöin esimerkiksi lukujen kappaleet voivat kokonaisuudessaan olla yhden elementin sisällä (<paragraph> </paragraph>). Toinen luonteenomainen piirre dokumenttikeskeiselle tiedolle on elementtien järjestyksen tärkeys. Tämä pätee esimerkiksi edellä mainittuun esimerkkiin. Dokumenttikeskeistä tietoa talletettaessa oliotietokanta tai natiivi XML-tietokanta on yleensä paras ratkaisu. Tällöin DOM-puu voidaan tallettaa sellaisenaan säilyttäen elementtejä koskeva järjestys.
6 Choosing a DBMS (cont d) Storing data-centric information data is of fine graduality and has a regular structure the smallest data item can be a PCDATA element, CDATA attribute, or CDATA block only few or no mixed content elements the order among sibling element is often insignificant examples: time tables, purchase orders,... RDBMSs could be used a middleware is needed (mappings) between RDBMSs and XML documents 251 Datakeskeinen tieto on puolestaan yleensä hienojakoista, jolloin myös merkkaus on yksityiskohtaisempaa. Lisäksi tieto on rakenteeltaan säännöllistä. Esimerkiksi tilaustiedot voivat olla talletettu XML-dokumenttiin datakeskeisesti. Tällöin jokaisella yksittäisellä tilauksella on sama rakenne. Käytännössä tiedon pienen yksikkö on merkkijonon sisältävä elementti (PCDATA), attribuutti (CDATA) tai CDATA-lohko. Datakeskeisessä dokumentissa tulisi olla mahdollisimman vähän osittain merkattua tietoa (mixed content), jossa siis elementin sisältä on osin merkkijonopohjaista (ja rakenteetonta) ja osin rakenteista. Toisin kuin dokumenttikeskeisen tiedon tapauksessa, datakeskeisen dokumentin sisarelementtien järjestyksellä ei ole merkitystä. Esimerkiksi tilaustiedot sisältävä XML-dokumentti sisältää joukon tilaustietoja, jotka on talletettu dokumenttiin mielivaltaisessa järjestyksessä tai joiden järjestyksellä ei tietosisällön kannalta ole merkitystä. Datakeskeinen tieto voidaan tallettaa esimerkiksi relaatiotietokantaan. Vaikka dokumentti olisikin hyvin ja tarkkaan merkattu, ei sisällön tallettaminen tietokannan tauluihin ole yksinkertaista. Näihin ongelmiin paneudumme seuraavaksi. Ero datakeskeisen ja dokumenttikeskeisen tietomallin välillä ei ole aina selkeä. Esimerkiksi kirja voi sisältää metadataa (kirjoittaja, julkaisija, julkaisuvuosi, kustantaja jne.), joka on datakeskeistä, vaikka dokumentti on muuten dokumenttikeskeinen. Lisäksi kannattaa muistaa, että tietty tieto voidaan merkata monella eri tavalla. Käytetyllä merkkauksella on siis myös suuri merkitys sille kuinka dokumentti- tai datakeskeistä merkattu tieto on.
7 Problematic types All data in an XML document is text (i.e., no real types ) conversions of data from text to other types (used in databases) is needed...and vice versa Dates many different formats Binary data many data transfer (XML<->database) products do not support binary data strict rules used in relational databases for managing binary data might cause problems 252 Yksi syy käytännön ongelmiin XML-dokumentin tiedon tallettamiseksi relaatiotietokannan tauluihin liittyy käytettyihin tyyppeihin: XML-dokumentti sisältää tekstiä (silloinkin kun teksti esittää toista tietotyyppiä) eikä siinä käytetä samoja tyyppejä kuin tietokannassa. Mikäli kuitenkin XMLdokumentin kielioppi on määritelty XML Schman avulla ja ko. skeema on käytettävissä, on tilanne huomattavasti helpompi, koska ainakin perustyypit on käytettävissä. Myös päivämäärien esittämiselle on olemassa monia eri tapoja, edellyttäen myös konversioita. Lisäksi binääridata saattaa aiheuttaa ongelmia. Suurin ongelma liittyy siihen, että useat ohjelmat, joita käytetään konvertoimaan tietoa XML-dokumenttien ja relaatiotietokannan välillä, eivät tue binääridatan esittämistä. Lisäksi tietokannassa voi olla käytössä sellaisia sääntöjä binääridatan esittämiseksi, jotka saattavat aiheuttaa ongelmia. XML-dokumenteissa esimerkiksi yleinen (mutta ei ainoa) tapa tallettaa binääridataa on base64 (MIME koodaus, jolla binääridata esitetään US-ASCIIn alijoukkona [0-9a-zA-Z+/]).
8 Problematic types (cont d) XML documents use Unicode while many databases offer limited (if any) support for Unicode Null data null/zero values vs. data that does not exist in a database, the non-existing data is marked as null data, destinguishing from zero value data XML supports null data through optional elements and attributes if the value of an optional element/attribute is null, it is often just left out Processing instructions and comments not actual data can appear almost anywhere in the XML document often ignored in data transfer XML markup 253 XML-dokumentit tukevat unicode standardia, kuten aiemmin on todettu. Vaikka se onkin varsin kätevää tiedonsiirronkannalta yleisesti, saattaa se aiheuttaa ongelmia talletettaessa tietoa tietokantaan. Tämä johtuu siitä, että tietokannat saattavat tarjota vain rajoitettua tukea unicoden käytölle. Lisäksi ne saattavat vaatia erityistä konfigurointia, jotta ASCII merkistöön kuulumattomia merkkejä voitaisiin käsitellä. Yksi suurista ongelmista koskee pois jätetyn tiedon ja arvoltaan tyhjän (tai nolla) tiedon erottelua. Pois jätetty tieto merkitään tietokannassa usein eksplisiittisesti (ns. null data ). Arvoltaan 0 (numerot) tai pituudeltaan (string) 0 oleva tieto tarkoittaa eri asiaa ja merkitään myös eri tavoin. XML:ssä voidaan myös jokin tieto jättää pois käyttäen optionaalisia elementtejä tai attribuutteja. Jos optionaalisen elementin arvo on nolla, se kuitenkin usein jätetään pois XML-dokumentista. Nämä erilaiset tavat käsitellä arvoltaan 0 olevaa tietoa ja toisaalta tyhjää/pois jätettyä tietoa aiheuttaa luonnollisesti ongelmia.
9 XML:n prosessointiohjeet eivät ole osa varsinaista XML-dokumentin tietosisältöä ja ne jätetäänkin usein pois tietoa talletettaessa tietokantaan. Joskus myös merkkauksen tallettaminen tietokantaan voi olla aiheellista (jäsentämättä sitä tarkemmin). Näin saattaa olla esimerkiksi osittain merkatun tiedon (mixed content) tapauksessa. Aina ei kuitenkaan ole helppoa määritellä onko XML-dokumentin merkkaus relevanttia tietoa talletettavaksi tietokantaan vai ei. Ajatellaan esimerkiksi XMLdokumentin seuraavaa osaa: <description> <b>confusing example:</b> <foo/> </description> Tietokantaan voitaisiin talletettaa description kenttään esim. <b>confusing example:</b> <foo/> Ovatko <b> ja <foo> näin ollen tietokannalle merkkausta vai tekstiä? Lisäksi, esimerkiksi </foo> merkkijonon etsiminen ei ole yksinkertaista kyselykielillä, jotka eivät ole XML-pohjaisia (esim. SQL). Ko. kielen tulee tietää, että itse asiassa etsitään merkkijonona <foo/>.
10 RDBMS schema -> DTD/XML Schema nested approach 1. For each table, create an element type 2. For each data (non-key) column in that table, as well as for the primary key column(s), add an attribute to the element type or a child element of PCDATA type to its content model 3. For each primary key/foreign key relationship in which a column of the table contributes the primary key, add a child element to the content model and process the table recursively. In addition, use wrapper elements, if needed or desired e.g., and <address> element may capture <street>, <areacode>, <city>, etc. elements 254 be aware not to create name collisions Seuraavassa on esitetty yksi suoraviivainen ja melko yksinkertainen proseduuri DTD/XML Schema - kieliopin määrittämiseksi relaatiotietokannan skeemasta. Tästä proseduurista käytetään nimitystä nested approach, koska se muodostaa joissain tapauksissa hyvinkin syviä sisäkkäisiä elementtirakenteita. Myöhemmin esitämme toisen tavan, joka tarjoaa mahdollisuuden esittää tietokannan taulujen sisältämä tieto hieman kompaktimmin XML-dokumenttina. 1) Luo jokaista taulua kohden elementtityyppi. 2) Luo jokaista tavallista saraketta sekä perusavainsaraketta kohden joko attribuutti (CDATA) tai lapsielementti (PCDATA) edellä luodulle elementtityypille. 3) Lisää jokaista perusavain-vierasavain suhdetta kohden lapsielementti, ja käsittele linkitetty taulu (vierasavain) rekursiivisesti Edellä olevan proseduurin lisäksi voidaan tarpeen mukaan luoda erillisiä säiliöelementtejä. Tämä voidaan tehdä mikäli halutaan hienojakoisempi rakenne XML-dokumentteihin. Vaikka nämä säiliöelementit ovatkin hyödyllisiä XML:n kannalta, saattavat ne aiheuttaa turhaa monimutkaisuutta relaatiotietokannan skeemoissa tehtäessä käänteistä konversiota (DTD->RDBMS). Edellä esitetyssä menetelmässä kuten muissakin menetelmissä relaatiotietokannan tietojen konvertoimiseksi XML-pohjaiseksi tiedoksi tulee huolehtia siitä, ettei elementtien nimien kanssa tule ongelmia.
11 Example: invoice_id VARCHAR(32) name VARCHAR(128) area code INTEGER street VARCHAR(32) Tarja Systä Neulask Oskari Onnenkantamoinen Teekkarink. item_id VARCHAR(32) product_id VARCHAR(128) quantity INTEGER invoice_id VARCHAR(32) abc abc abc product_id VARCHAR(128) abc0010 abc0011 PName VARCHAR(128) Product X Product Y 255 Kalvolla esitetystä taulusta voidaan edellä esitetyllä proseduurilla tuottaa alla olevan kaltainen DTDmäärittely. <?xml version= 1.0?> <!DOCTYPE purchaseorderlist [ <!ELEMENT purchaseorderlist (invoice*)> <!ELEMENT invoice (areacode, name,street, items)> <!ATTLIST invoice invoiceno CDATA #REQUIRED> <!ELEMENT name (#PCDATA)> <!ELEMENT street (#PCDATA> <!ELEMENT items (item*)> <!ELEMENT item (product)> <!ATTLIST item quantity CDATA #REQUIRED itemid CDATA #REQUIRED productid CDATA #REQUIRED> <!ELEMENT product (pname)> <!ELEMENT pname (#PCDATA)> ]>
12 Tämän jälkeen tietokannan taulujen sisältö voidaan tallettaa ko. kieliopin mukaiseen XMLdokumenttiin. <?xml version= 1.0?> <purchaseorderlist> <invoice invoiceno= > <areacode>33820</areacode> <name>tarja Systä</street> <street>neulask.</street> <items> <item quantity= 2 itemid= productid= abc0010 > <product> <pname>product X</pname> </product> </item> <item quantity= 1 itemid= productid= abc0011 > <product> <pname>product Y</pname> </product> </item> </items> </invoice> <invoice invoiceno= > <areacode>33720</areacode> <name>oskari Onnenkantamoinen</street> <street>teekkarink.</street> <items> <item quantity= 8 itemid= productid= abc0010 > <product> <pname>product X</pname> </product> </item> </items> </invoice> </purchaseorderlist>
13 RDBMS tables -> XML flat approach Elements appearing multiple times can be referred using the ID and IDREF type attributes... <!ELEMENT product (pname)> <!ATTLIST product productid ID #IMPLIED> e.g. in the purchase order example, information for each product appears once in the document Advantage: more compact XML documents, since elements need not be repeated as heavily as in the nested approach 256 Edellä esitetylle runsaasti sisäkkäisiä rakenteita luovalle tavalle ( nested approach ) vaihtoehtoinen tapa on nk. flat approach, jossa käytetään hyväksi ID ja IDREF attribuutteja. Tarkoituksena on välttää kirjoittamasta samoja elementtejä useampaan kertaan XML-dokumenttiin ja siten pyrkiä kompaktimpaan esitysmuotoon. Edellä esitetyssä esimerkissä elementti ProductX ja sitä koskeva tieto kirjoitetaan uudelleen aina kun jokin tilaus sisältää vastaavan elementin. Tämä ei ole XMLdokumentin ylläpidettävyyden kannalta paras mahdollinen ratkaisu; selkeämpää olisi, jos ProductX kuvattaisiin vain kerran ja siihen vain viitattaisiin eri item-elementeistä aina tarvittaessa. flat approach tähtää juuri siihen. Viittaus saadaan aikaan ID ja IDREF attribuuttien avulla. Muista, että IDREF-tyyppisen attribuutin arvon tulee olla ID-tyyppinen attribuutti.
14 Esimerkki: <?xml version= 1.0?> <purchaseorderlist> <invoice invoiceno= > <areacode>33820</areacode> <name>tarja Systä</street> <street>neulask.</street> <items> <item quantity= 2 itemid= productidref= abc0010 /> <item quantity= 1 itemid= productidref= abc0011 /> </items> </invoice> <invoice invoiceno= > <areacode>33720</areacode> <name>oskari Onnenkantamoinen</street> <street>teekkarink.</street> <items> <item quantity= 8 itemid= productidref= abc0010 /> </items> </invoice> <products> <product product_id= abc0010 > <pname>product X</pname> </product> <product product_id= abc0011 > <pname>product </pname> </product> </products> </purchaseorderlist>
15 From XML document to RDBMS It is often acceptable to loose a part of XML document information DTD entities: definitions and usage physical structure, e.g. the order of sibling elements (data-centric information) converting structured and ordered data (XML document) to a table data that is unordered Many tables are typically needed to store all the information in the XML document XML documents are semi-structured it is often impossible to map an XML document to a single table e.g. for queries, the tables need to be joined (using primary and foreign keys) there are many ways to do this! XML Schema/DTD is not available decompose XML documents by using XPath and store a pair of 257 an XPath expression and the content addressed by the expression Talletettaessa XML-dokumentin tietoja tietokantaan, ei kaikkea dokumentin sisältämää tietoa aina tarvitse tai ole mahdollistakaan siirtää. Esimerkiksi dokumentin fyysistä rakennetta erityisesti, jos kyseessä on datakeskeistä tietoa ei yleensä tarvitse tallettaa. Järjestetyn tiedon, kuten sisarelementtien järjestys, tallettaminen järjestämättömään tietokannan tauluun olisi joka tapauksessa hankalaa. Myös mahdollisesti käytettyjä entiteettejä koskeva tieto ja dokumentin sisäinen DTDmäärittely jätetään yleensä huomioimatta. Mikäli kielioppimäärittely (DTD tai XML Schema) on saatavilla, sitä voidaan käyttää apuna päätettäessä miten ja kuinka moneen tauluun dokumentin tieto tulee tallettaa. Tämä ei kuitenkaan ole yleensä suoraviivaista. XML-dokumentin tietoa ei tyypillisesti voida tallettaa yhteen tauluun. Tämä johtuu pääosin siitä, että XML on osittain rakenteista tietoa. Toisaalta XML-dokumentin rakenteen kannalta voi muutenkin olla mielekkäämpää esittää tieto useana tauluna. Toisaalta tiedon haun (esim. kyselyt) kannalta on oleellista, että ko. taulut on tavalla tai toisella linkitettyjä. Tämä linkitys toteutetaan käytännössä perusavaimien (primary key, suom. myös pääavain) ja vierasavaimien (foreign key, suom. myös viiteavain) avulla. Koska linkitys XML-pohjaisen tiedon ja toisaalta relaatiotietokannan taulujen välillä ei ole suoraviivaista ja koska se voidaan tehdä monella eri tavalla, tarjoavatkin tietokantojen tuottajat tukea ko. relaation määräämiseksi ja yleisesti XML:ää ja tietokantoja hyödyntävien sovellusten toteuttamiseksi. Esimerkiksi tällaisista työkaluista ovat Oraclen XML Developer s Kit (XDK) ja IBM:n DB2 XML Extender.
16 Mikäli kielioppimääritystä (XML Schema tai DTD) ei ole olemassa, yksi suoraviivainen tapa tallettaa XML-dokumentin tieto on käyttää XPath-kieltä yksittäisten tietoelementtien osoittamiseen ja tallettaa aina kullekin riville sekä XPath-polku että ko. kohdasta löytyvä tieto (eri sarakkeisiin). Esimerkki: Content XPath Primary Key Tarja /R[1]/P[1]/A[1] TF111 /R[1]/P[1]/B[1]
17 DTD/XML Schema -> RDBMS schema 1. For each complex element type, create a table and a primary key column When an XML element can contain a subelement, the subelement contains a foreign key corresponding to the parent's primary key 2. For each element type with mixed content, create a table in which PCDATA is stored and link it to the parent table with the parent table s primary key 3. For each single-valued attribute of that element type, and for each simple child element that may occur (max) once, create a column in that table. If the child element type or attribute is optional, make the column nullable. 4. For each multi-valued attribute and for each simple child element occuring multiple times, create a separate table to store values, linked to the parent table through the parent table's primary key. 5. For each complex child element, link the table corresponding to the parent element type to the table corresponding to the child element type with the parent table's primary key 258 Mikäli XML-dokumentin kielioppimääritys on olemassa, voidaan talletus tehdä vaikkapa (huom! tämä voidaan tehdä monella eri tavalla) käyttäen kalvolla (suom. alla) kuvattua proseduuria. Proseduuri on periaatteessa käänteinen edellä esitetylle RDBMS->DTD proseduurille. Harjoitus: tuottaako tässä kuvattu proseduuri edellä esitetystä DTD-määrittelystä ( nested approach esimerkki) ko. esimerkin mukaiset relaatiotietokannan taulut? 1. Luo jokaista kompleksista elementtityyppiä (sisältää alirakenteita) kohden taulu, jossa on yksi sarake perusavaimia varten. Jos elementillä voi olla alielementti, tulee ko. alielementillä olla vierasavain, joka vastaa isätaulun perusavainta. 2. Luo jokaista sekarakenteista (mixed content) tyyppiä kohden taulu, johon merkkijonopohjainen tieto (PCDATA) talletetaan. Linkitä ko. taulu isätauluun käyttäen sen perusavainta. 3. Luo jokaista elementtityypin yksiarvoista attribuuttia ja korkeintaan kerran esiintyvää lapsielementtiä kohden sarake edellä luotuun tauluun. Mikäli lapsielementti on optionaalinen, merkitse optionaalisuus myös ko. sarakkeeseen (nullable) 4. Luo jokaista elementtityypin moniarvoista attribuuttia (esim. XML HTML SGML ) ja mahdollisesti useamman kerran (*) esiintyvää yksinkertaista lapsielementtiä kohden uusi taulu. Linkitä tämä taulu käyttäen vierasavainta ja isätaulun perusavainta. 5. Jokaista kompleksista elementtityyppiä kohden linkitä isäelementtiä vastaava taulu tätä (kompleksista) elementtityyppiä vastaavaan tauluun käyttäen isätaulun perusavainta.
TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo
TIEKE Verkottaja Service Tools for electronic data interchange utilizers Heikki Laaksamo TIEKE Finnish Information Society Development Centre (TIEKE Tietoyhteiskunnan kehittämiskeskus ry) TIEKE is a neutral,
LisätiedotFinFamily PostgreSQL installation ( ) FinFamily PostgreSQL
FinFamily PostgreSQL 1 Sisällys / Contents FinFamily PostgreSQL... 1 1. Asenna PostgreSQL tietokanta / Install PostgreSQL database... 3 1.1. PostgreSQL tietokannasta / About the PostgreSQL database...
LisätiedotXML prosessori. XML prosessointi. XML:n kirjoittaminen. Validoiva jäsennin. Tapahtumaohjattu käsittely. Tapahtumaohjattu käsittely.
XML prosessointi Miten XML dokumentteja luetaan ja kirjoitetaan XML prosessori lukee ja välittää XML dokumentin sovellukselle. Se sisältää entieettikäsittelijän (mahdollisesti) XML jäsentimen Sovellus
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Taulukon edut Taulukon haitat Taulukon haittojen välttäminen Dynaamisesti linkattu lista Linkatun listan solmun määrittelytavat Lineaarisen listan toteutus dynaamisesti linkattuna
Lisätiedot2. Käsiteanalyysi ja relaatiomalli
2. Käsiteanalyysi ja relaatiomalli lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Tietokannan suunnitteluprosessin osat sivu 2 Käsiteanalyysi ER-mallinnus, tietomallinnus
LisätiedotUse of spatial data in the new production environment and in a data warehouse
Use of spatial data in the new production environment and in a data warehouse Nordic Forum for Geostatistics 2007 Session 3, GI infrastructure and use of spatial database Statistics Finland, Population
LisätiedotXML johdatus: DTD. Jaana Holvikivi
XML johdatus: DTD Jaana Holvikivi Dokumenttityypin rakennemäärittely DTD = kielioppi esim. XML- esitykselle Elementit Attribuutit Entiteetit ja notaatiot Prosessointikomennot DTD:n suunnittelu 19.1.2013
Lisätiedot7.4 Variability management
7.4 Variability management time... space software product-line should support variability in space (different products) support variability in time (maintenance, evolution) 1 Product variation Product
LisätiedotWWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys
WWW-OHJELMOINTI 1 WWW-ohjelmoinnin kokonaisuus SGML, XML, HTML WWW-selaimen sovellusohjelmointi WWW-palvelimen sovellusohjelmointi Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 26.10.2000
LisätiedotOpettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija
Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija Opintojaksolla: keskitytään relaatiotietokantojen teoriaan ja toimintaan SQL-kieli kyselykielenä
LisätiedotC++11 seminaari, kevät Johannes Koskinen
C++11 seminaari, kevät 2012 Johannes Koskinen Sisältö Mikä onkaan ongelma? Standardidraftin luku 29: Atomiset tyypit Muistimalli Rinnakkaisuus On multicore systems, when a thread writes a value to memory,
LisätiedotVaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta.
1. Julkaisutoiminnan peruskysymyksiä a) Mieti kohderyhmät b) Mieti palvelut c) Mieti palvelujen toteutus Vaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta. PALVELUKOKONAISUUDET:
LisätiedotXML kielioppi. Elementtien ja attribuuttien määrittely. Ctl230: Luentokalvot Miro Lehtonen
XML kielioppi Elementtien ja attribuuttien määrittely Ctl230: Luentokalvot 11.10.2004 Miro Lehtonen Dokumenttien mallinnus Säännöt dokumenttityypeille 3Mahdollisten dokumenttirakenteiden määrittely Samassa
LisätiedotJohdatus rakenteisiin dokumentteihin
-RKGDWXVUDNHQWHLVLLQGRNXPHQWWHLKLQ 5DNHQWHLQHQGRNXPHQWWL= rakenteellinen dokumentti dokumentti, jossa erotetaan toisistaan dokumentin 1)VLVlOW, 2) UDNHQQHja 3) XONRDVX(tai esitystapa) jotakin systemaattista
LisätiedotHarjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:
Linux-harjoitus 6 Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,
LisätiedotOn instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs
Lisätiedot7. Product-line architectures
7. Product-line architectures 7.1 Introduction 7.2 Product-line basics 7.3 Layered style for product-lines 7.4 Variability management 7.5 Benefits and problems with product-lines 1 Short history of software
LisätiedotHSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32
HSMT Tietokannoista Ville Leppänen HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)
LisätiedotSovellusarkkitehtuurit
HELIA TiKo-05 1 (9) Sovellusarkkitehtuurit ODBC (Open Database Connectivity)... 2 JDBC (Java Database Connectivity)... 5 Middleware... 6 Middleware luokittelu... 7 Tietokanta -middleware... 8 Tapahtumamonitorit
LisätiedotOhjelmistojen mallintamisen ja tietokantojen perusteiden yhteys
Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty
LisätiedotTietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);
Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun
LisätiedotLUONNOS RT 80260 EN AGREEMENT ON BUILDING WORKS 1 THE PARTIES. May 1998 1 (10)
RT 80260 EN May 1998 1 (10) AGREEMENT ON BUILDING WORKS This agreement template is based on the General Terms and Conditions of Building Contracts YSE 1998 RT 16-10660, LVI 03-10277, Ratu 417-7, KH X4-00241.
Lisätiedot1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotFYYSINEN SUUNNITTELU
IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU JA IIO30220 DATABASE MANAGEMENT / TIETOKANNAN HALLINTA FYYSINEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI,
LisätiedotOhjelmointikielet ja -paradigmat 5op. Markus Norrena
Ohjelmointikielet ja -paradigmat 5op Markus Norrena Ko#tehtävä 4 Viimeistele "alkeellinen kuvagalleria". Käytännössä kaksi sivua Yksi jolla voi ladata kuvia palvelimelle (file upload) Toinen jolla ladattuja
LisätiedotHOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10
HOJ Haja-aiheita Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)
LisätiedotTietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);
Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun
LisätiedotChoose Finland-Helsinki Valitse Finland-Helsinki
Write down the Temporary Application ID. If you do not manage to complete the form you can continue where you stopped with this ID no. Muista Temporary Application ID. Jos et onnistu täyttää lomake loppuun
LisätiedotTutkitaan sitten HTML-dokumenttien anatomiaa, jotta päästään käsiksi rakenteisten dokumenttien käsitteistöön esimerkkien kautta.
3 HTML ja XHTML Tutkitaan sitten HTML-dokumenttien anatomiaa, jotta päästään käsiksi rakenteisten dokumenttien käsitteistöön esimerkkien kautta.
LisätiedotSQL - STRUCTURED QUERY LANGUAGE
SQL Peruskomentoja SQL - STRUCTURED QUERY LANGUAGE SQL on tietokantojen käsittelyyn kehitetty kieli Esimerkkejä kielellä hoidettavistaa toiminnoista: Tietokannan rakenteen määrittely ja muuttaminen Kyselyt
LisätiedotSQL-perusteet, SELECT-, INSERT-, CREATE-lauseet
SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin
LisätiedotResults on the new polydrug use questions in the Finnish TDI data
Results on the new polydrug use questions in the Finnish TDI data Multi-drug use, polydrug use and problematic polydrug use Martta Forsell, Finnish Focal Point 28/09/2015 Martta Forsell 1 28/09/2015 Esityksen
LisätiedotOn instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs
LisätiedotRelaatiomalli ja -tietokanta
Relaatiomalli ja -tietokanta > Edgar. F. (Ted) Codd, IBM, 1969 < A Relational Model of Data for Large Shared Data Banks Communications of the ACM, Vol. 13, No. 6, June 1970, pp. 377-387. > 70-luvun lopulla
LisätiedotLab SBS3.FARM_Hyper-V - Navigating a SharePoint site
Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site Note! Before starting download and install a fresh version of OfficeProfessionalPlus_x64_en-us. The instructions are in the beginning of the exercise.
LisätiedotLiikenneverkot-tietotuote
Liikenneverkot-tietotuote Tietotuotteet kuntoon 27.10.2017 27.10.2017 Sisältö 1. Miten lähdettiin liikkeelle 2. Välineet ja prosessit 3. Haasteet 4. Validointi 5. Hyödyntäminen 6. Lessons learned 27.10.2017
LisätiedotTietokantakurssit / TKTL
Tietokantakurssit / TKTL Tietokantojen perusteet - tietokannan käyttö: SQL, sovellukset Tietokannan hallinta - tietokannanhallintajärjestelmän ominaisuuksia: tallennusrakenteet kyselyjen toteutus tapahtumien
LisätiedotCSE-A1200 Tietokannat
CSE-A1200 Tietokannat 29.3.2016 CSE-A1200 Tietokannat 29.3.2016 1 / 40 Oppimistavoitteet: tämän luennon jälkeen Tiedät, miten tietokannan relaatioiden (taulujen) määrittelyt kirjoitetaan SQL:llä. Osaat
LisätiedotThe CCR Model and Production Correspondence
The CCR Model and Production Correspondence Tim Schöneberg The 19th of September Agenda Introduction Definitions Production Possiblity Set CCR Model and the Dual Problem Input excesses and output shortfalls
LisätiedotPaikkatiedon semanttinen mallinnus, integrointi ja julkaiseminen Case Suomalainen ajallinen paikkaontologia SAPO
Paikkatiedon semanttinen mallinnus, integrointi ja julkaiseminen Case Suomalainen ajallinen paikkaontologia SAPO Tomi Kauppinen, Eero Hyvönen, Jari Väätäinen Semantic Computing Research Group (SeCo) http://www.seco.tkk.fi/
LisätiedotKirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina
Kirjasto Kevät 2001 Auvinen Annemari Niemi Anu Harjoitustyö 7.4.2001 Sisällysluettelo 1. Yleiskuvaus... 3 2. Vaatimukset... 3 2.1. Toiminnalliset... 3 2.1.1. Sisäänkirjautuminen... 3 2.1.2. Nimikkeiden
LisätiedotHELIA 1 (14) Outi Virkki Tiedonhallinta
HELIA 1 (14) Luento SQL... 2 Historiaa... 2 Standardit... 3 Käyttö... 4 DDL... 5 Tietokantaobjektien määrittely... 5 SQL:n tietotyypit... 6 Eheyssääntöjen määrittely... 9 Indeksin määrittely... 11 Syntaksikuvaukset...
LisätiedotFraktaalit. Fractals. Riikka Kangaslampi Matematiikan ja systeemianalyysin laitos Aalto-yliopisto. 1 / 8 R. Kangaslampi Fraktaalit
Fraktaalit Fractals Riikka Kangaslampi Matematiikan ja systeemianalyysin laitos Aalto-yliopisto 5.-7.10.2012 1 / 8 R. Kangaslampi Fraktaalit Bottomless wonders spring from simple rules, which are repeated
LisätiedotNational Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007
National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007 Chapter 2.4 Jukka Räisä 1 WATER PIPES PLACEMENT 2.4.1 Regulation Water pipe and its
LisätiedotTiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas
Tiedonhallinnan perusteet Viikko 1 Jukka Lähetkangas Kurssilla käytävät asiat Tietokantojen toimintafilosofian ja -tekniikan perusteet Tiedonsäilönnän vaihtoehdot Tietokantojen suunnitteleminen internetiä
LisätiedotTIETOKANNAT JOHDANTO
TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI 2000-2011 Tieto TAUSTAA Yritykselle tiedot ovat tärkeä resurssi päätöksenteon tukena (JIT) varastointi ja käyttö vaativat investointeja vrt. energia (lähde,
LisätiedotEUROOPAN PARLAMENTTI
EUROOPAN PARLAMENTTI 2004 2009 Kansalaisvapauksien sekä oikeus- ja sisäasioiden valiokunta 2008/0101(CNS) 2.9.2008 TARKISTUKSET 9-12 Mietintöluonnos Luca Romagnoli (PE409.790v01-00) ehdotuksesta neuvoston
LisätiedotLAPPEENRANNAN TEKNILLINEN YLIOPISTO Tietotekniikan osasto. Diplomityö XML-VERKKOTIETOKANTOJEN SUORITUSKYKYVERTAILU
LAPPEENRANNAN TEKNILLINEN YLIOPISTO Tietotekniikan osasto Diplomityö XML-VERKKOTIETOKANTOJEN SUORITUSKYKYVERTAILU Diplomityön aihe hyväksytty tietotekniikan osaston osastoneuvostossa 12.10.2005 Työn tarkastajat
LisätiedotTIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI
TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI Tarkastellaan Tietokannan fyysistä suunnittelua Menetelmän vaihetta 4 Looginen suunoitelma muutetaan toimiviksi tauluiksi Id enimi snimi muuta 1 Aki Joki xxx
LisätiedotAlternative DEA Models
Mat-2.4142 Alternative DEA Models 19.9.2007 Table of Contents Banker-Charnes-Cooper Model Additive Model Example Data Home assignment BCC Model (Banker-Charnes-Cooper) production frontiers spanned by convex
LisätiedotHohde Consulting 2004
Luento 5: XQuery AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XQuery XQuery uudet funktiot sekvenssit muuttujat Iterointi järjestys suodatus järjestäminen Ehtorakenteet Muita toimintoja www.hohde.com
LisätiedotYou can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed
Online Meeting Guest Online Meeting for Guest Participant Lync Attendee Installation Online kokous vierailevalle osallistujalle Lync Attendee Asennus www.ruukki.com Overview Before you can join to Ruukki
LisätiedotEfficiency change over time
Efficiency change over time Heikki Tikanmäki Optimointiopin seminaari 14.11.2007 Contents Introduction (11.1) Window analysis (11.2) Example, application, analysis Malmquist index (11.3) Dealing with panel
LisätiedotOffice 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy
t Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy Agenda 1. Office Excel 2013 2. SharePoint 2013 3. SQL Server 2012 SP1 4. SharePoint 2013 BI-arkkitehtuuri 5. Kunta-analyysi
LisätiedotRelaatioista TIETOJENKÄSITTELYTIETEIDEN LAITOS, JUHA IISAKKA 11-14
Relaatioista Sarakenimistä relaation kaava tulisi olla yksiselitteinen attribuutin roolinimen tulisi auttaa ymmärtämään attribuutin tarkoituksen OSASTO(NIMI,NRO, TNRO, SIJAINTI) mitä tarkoittaa TNRO? viiteavaimella
Lisätiedot1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä
OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan
LisätiedotOther approaches to restrict multipliers
Other approaches to restrict multipliers Heikki Tikanmäki Optimointiopin seminaari 10.10.2007 Contents Short revision (6.2) Another Assurance Region Model (6.3) Cone-Ratio Method (6.4) An Application of
LisätiedotLYTH-CONS CONSISTENCY TRANSMITTER
LYTH-CONS CONSISTENCY TRANSMITTER LYTH-INSTRUMENT OY has generate new consistency transmitter with blade-system to meet high technical requirements in Pulp&Paper industries. Insurmountable advantages are
LisätiedotTietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);
Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun
LisätiedotFinFamily Installation and importing data (11.1.2016) FinFamily Asennus / Installation
FinFamily Asennus / Installation 1 Sisällys / Contents FinFamily Asennus / Installation... 1 1. Asennus ja tietojen tuonti / Installation and importing data... 4 1.1. Asenna Java / Install Java... 4 1.2.
LisätiedotTiedon esitys tietokoneessa. Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2010
Tiedon esitys tietokoneessa Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2010 Luennon sisältö 1. Kurssin loppupuolen rakenne 2. Tiedon binääriluonne AD-muunnos 3.
LisätiedotHELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000
HELIA 1 (15) Luento 2.7 Toiminnallisuutta tietokantaan... 2 Deklaratiivinen eheysvalvonta... 2 Proseduraalinen eheysvalvonta... 3 Eheysvalvonnan suunnittelusta... 4 Sääntöjen määrittely... 4 Toteutusvaihtoehdot...
LisätiedotAPI:Hack Tournee 2014
apisuomi API:Hack Tournee 2014 #apihackfinland Twitter: @ApiSuomi API:Suomi - Suomen metarajapinta apisuomi Apisuomi kerää vertailutietoa ja arvosteluja rajapinnoista madaltaen avoimen datan uudelleenkäytön
LisätiedotHelpottuuko sovellusten välinen integraatio XML:n avulla - kokemuksia ja ratkaisuja, teknologiajohtaja Sauli Tujunen, atbusiness Communications Oyj
SUOMEN KUNTALIITTO Sosiaali- ja terveysyksikkö Helpottuuko sovellusten välinen integraatio XML:n avulla - kokemuksia ja ratkaisuja, teknologiajohtaja Sauli Tujunen, atbusiness Communications Oyj ~ (operatiiviset-/tiedonjakelu-/si~llönhallinta~velluk~et)
LisätiedotLINUX-HARJOITUS, MYSQL
LINUX-HARJOITUS, MYSQL Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,
LisätiedotApuja ohjelmointiin» Yleisiä virheitä
Apuja ohjelmointiin» Yleisiä virheitä Ohjelmaa kirjoittaessasi saattaa Visual Studio ilmoittaa monenlaisista virheistä "punakynällä". Usein tämä johtuu vain siitä, että virheitä näytetään vaikket olisi
LisätiedotSecurity server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes
LisätiedotCollaborative & Co-Creative Design in the Semogen -projects
1 Collaborative & Co-Creative Design in the Semogen -projects Pekka Ranta Project Manager -research group, Intelligent Information Systems Laboratory 2 Semogen -project Supporting design of a machine system
Lisätiedot6 XML-työkalut 1. 6 XML-työkalut
6 XML-työkalut 1 6 XML-työkalut XML:n periaatteiden tutustumisen jälkeen on helpompi tutustua XML-dokumenttien käsittelyyn ja katseluun suunniteltuja työkaiuja. XML:n yleistymisen pahin pullonkaula on
LisätiedotTiedonhallinnan perusteet. H11 Ovien ja kulun valvontajärjestelmän tietokanta
Tiedonhallinnan perusteet H11 Ovien ja kulun valvontajärjestelmän tietokanta Nimi: Mikko Haapanen Opiskelijanumero: 0900568 Ryhmä: T09L Työ tehty: 15.3.2010 Mikko Haapanen 15.3.2010 1(7) 1. Asiakasvaatimukset
LisätiedotJWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari
JWT 2016 luento 11 to 21.4.2016 klo 14-15 Aulikki Hyrskykari PinniB 1097 1 Viime luennolla o AJAX ja JSON, harjoitustyön tehtävänanto, vierailuluento avoimesta datasta Tänään o APIt rajapinnoista yleisesti
LisätiedotLisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa
Lisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa Osa II OUGF / 12.5.2004 c Sisält ltö Mitä uutta? Yleistä lisensoinnista Lisensointiin liittyviä ongelmia Hankinnassa muistettavia asioita
LisätiedotHELIA 1 (21) Outi Virkki Tietokantasuunnittelu
HELIA 1 (21) Luento 4.1 Oliot ja Relaatiot... 2 Relaatiomalli... 2 Oliomalli... 2 Termejä... 4 Yhteensovituksen 3 tapaa... 5 1) Oliot relaatioina / tauluina ja RDBMS... 6 Olioluokka... 7 Olion identiteetti...
LisätiedotCapacity Utilization
Capacity Utilization Tim Schöneberg 28th November Agenda Introduction Fixed and variable input ressources Technical capacity utilization Price based capacity utilization measure Long run and short run
LisätiedotTarua vai totta: sähkön vähittäismarkkina ei toimi? 11.2.2015 Satu Viljainen Professori, sähkömarkkinat
Tarua vai totta: sähkön vähittäismarkkina ei toimi? 11.2.2015 Satu Viljainen Professori, sähkömarkkinat Esityksen sisältö: 1. EU:n energiapolitiikka on se, joka ei toimi 2. Mihin perustuu väite, etteivät
LisätiedotMillainen on onnistunut ICT-projekti?
Millainen on onnistunut ICT-projekti? Ohjelmistotuotannon lehtori Tero Tensu Ahtee Ohjelmistotekniikan laitoksella 1990- Projektityö-kurssilla 1991- pesunkestävä yliopistohampuusi ei päivääkään oikeissa
LisätiedotUusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)
Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition) Esko Jalkanen Click here if your download doesn"t start automatically Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition) Esko Jalkanen
LisätiedotSQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX
SQL - perusteet SQL - yleistä Esa Salmikangas InMics SE Oy versio 16.6.2003 SQL - perusteet 1 SQL - perusteet 2 SQL Structured Query Language SQL on tietokantojen käsittelyyn kehitetty kieli yleisimmät
Lisätiedot812336A C++ -kielen perusteet, 21.8.2010
812336A C++ -kielen perusteet, 21.8.2010 1. Vastaa lyhyesti seuraaviin kysymyksiin (1p kaikista): a) Mitä tarkoittaa funktion ylikuormittaminen (overloading)? b) Mitä tarkoittaa jäsenfunktion ylimääritys
LisätiedotGap-filling methods for CH 4 data
Gap-filling methods for CH 4 data Sigrid Dengel University of Helsinki Outline - Ecosystems known for CH 4 emissions; - Why is gap-filling of CH 4 data not as easy and straight forward as CO 2 ; - Gap-filling
LisätiedotLohtu-projekti. Ylläpitäjän dokumentti. Versiohistoria: Ensimmäinen versio Andreas Asuja
Lohtu-projekti Ylläpitäjän dokumentti Versiohistoria: 1.0 12.5.2003 Ensimmäinen versio Andreas Asuja Helsinki 12. toukokuuta 2003 Kimmo Airamaa, Andreas Asuja, Mari Muuronen, Seppo Pastila, Virve Taivaljärvi
LisätiedotOHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä
OHJ-5201 Web-palveluiden toteutustekniikat Kurssisisällöstä Tarja Systä 1 Yleistä Esitietovaatimukset OHJ-1400 Olio-ohjelmoinnin peruskurssi (pakollinen) OHJ-5010 Hajautettujen järjestelmien perusteet
LisätiedotTehtävä 1. Tietojen lisääminen, poistaminen, päivittäminen ja tulostaminen
Esimerkki: Tehtävä 1. Tietojen lisääminen, poistaminen, päivittäminen ja tulostaminen Luo tietokanta Koulu. Tietokantaan lisätään 3 taulua. Kurssit-taulu: kurssiid not null primary key INTEGER aineid not
LisätiedotDenormalisointia turvallisesti. Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso
Denormalisointia turvallisesti Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso Timo Raitalaakso Senior Database Specialist Solita Oy 2001- - 2001 Tampereen Teknillinen korkeakoulu Tietokannat
LisätiedotTietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1
Tietokannan hallinta Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta 1. Johdanto (käsitteitä) 2. Tietokannan talletusrakenteet 3. Tietokannan hakemistorakenteet 4. Kyselyiden käsittely ja optimointi
LisätiedotRAIN RAKENTAMISEN INTEGRAATIOKYVYKKYYS
RAIN RAKENTAMISEN INTEGRAATIOKYVYKKYYS Loppuseminaari 11.12.2018 YIT:n pääkonttori, Helsinki RAIN hankkeen loppuseminaari 11.12.2018 Käyttäjälähtöinen tiedonhallinta (WP 4) Professori Harri Haapasalo OY
LisätiedotHELIA 1 (13) Outi Virkki Tietokantasuunnittelu
HELIA 1 (13) Luento 2.9 Tietohakemistot 2 2 Coddin 12 säännöstä RDBMS:lle... 3 Oraclen tietohakemistonäkymät (osa) 4 Yleiset 4 Taulut 4 Säännöt 4 Näkymät 4 Synonyymit 5 Talletetut rutiinit 5 Käyttöoikeudet
LisätiedotPower BI 29.5.2015. Tech Conference 28.-29.5.2015. Power BI. Pekka.Korhonen@sovelto.fi. #TechConfFI. Johdanto
Tech Conference 28.-29.5.2015 Power BI Pekka.Korhonen@sovelto.fi #TechConfFI Johdanto 2 1 Microsoft BI komponentit Azure Machine Learning Stream Analytics HDInsight DocumentDB Blob/table storage VM SQL
LisätiedotOlet vastuussa osaamisestasi
Olet vastuussa osaamisestasi Ohjelmistoammattilaisuuden uudet haasteet Timo Vehmaro 02-12-2015 1 Nokia 2015 Mitä osaamista tulevaisuudessa tarvitaan? Vahva perusosaaminen on kaiken perusta Implementaatio
LisätiedotBDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.
BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. Pekka Ollikainen Open Source Microsoft CodePlex bio Verkkosivustovastaava Suomen Sarjakuvaseura
Lisätiedotpapinet -sanomastandardit
papinet -sanomastandardit Tapio Räsänen Puutavaralogistiikan kehittämishaasteita 14.6.2007 1 papinet on An international paper and forest products industry e-business initiative. A set of standard electronic
LisätiedotStanForD-XML. Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen
Projektiryhmä StanForD-XML Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen Rahoittajat Koskitukki Oy, Metsähallitus, Metsäliitto Osuuskunta, Pölkky Oy, Stora Enso Oyj, UPM- Kymmene Oyj, Vapo Timber Oy, Yksityismetsätalouden
LisätiedotCurriculum. Gym card
A new school year Curriculum Fast Track Final Grading Gym card TET A new school year Work Ethic Detention Own work Organisation and independence Wilma TMU Support Services Well-Being CURRICULUM FAST TRACK
LisätiedotMUSEOT KULTTUURIPALVELUINA
Elina Arola MUSEOT KULTTUURIPALVELUINA Tutkimuskohteena Mikkelin museot Opinnäytetyö Kulttuuripalvelujen koulutusohjelma Marraskuu 2005 KUVAILULEHTI Opinnäytetyön päivämäärä 25.11.2005 Tekijä(t) Elina
LisätiedotProseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008
Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT Jouni Huotari S2008 2 Proseduurit Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)
LisätiedotSecurity server v6 installation requirements
CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents
LisätiedotOn instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)
On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs
LisätiedotPROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009
PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)
LisätiedotHELIA 1 (14) Outi Virkki Tiedonhallinta
HELIA 1 (14) Luento Näkymät... 2 Relaatiotyypit... 2 Taulu - Tallennettu relaatio... 3 Näkymä - Virtuaalirelaatio... 3 Tulosrelaatio - Kyselyn tulos... 3 Otetaulut - Tauluun tallennettu kyselyn tulos...
Lisätiedot