1 / 21

Intro

Intro. Større applikationer, f. eks: Bogpris.dk. Nye bøger. Transaktioner. Forelæsning nr 9 Designprocedure og konstruktion Søge i en database Eks. Gymnastikforeningen Simple søgninger Avancerede søgninger Agregerede udtryk Manipulere data Indsætte data Næste uges opgave.

Download Presentation

Intro

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Intro Større applikationer, f. eks: Bogpris.dk

  2. Nye bøger

  3. Transaktioner Forelæsning nr 9 • Designprocedure og konstruktion • Søge i en database • Eks. Gymnastikforeningen • Simple søgninger • Avancerede søgninger • Agregerede udtryk • Manipulere data • Indsætte data • Næste uges opgave

  4. Designprocedure og konstruktion 3-tier model: • Databaselag • Forretningslag • Præsentationslag Eksempel på designprocedure: Modellering af database Formulere mulige transaktioner Designe applikation () Konstruktion

  5. Gymnastikforeningen - igen gf_kurserkursus_idkursusnavn gf_personerperson_idemailnavntilknytning gf_kursusansvarkursus_idperson_idperiode

  6. Simpel WHERE-sætning Hvilke trænere findes der i gymnastikforeningen? SELECT navn FROM gf_personer WHERE tilknytning = 'Træner'

  7. Simpel WHERE-sætning Hvilken emailadresse har Dorte Didriksen? SELECT email FROM gf_personer WHERE navn = 'Dorte Didriksen'

  8. Wildcard Hvad er Bennys fulde navn? SELECT navn FROM gf_personer WHERE navn LIKE 'Benny%'

  9. Joins kursusnavn = ’Dansegymnastik’ navn = ’Anders%’

  10. Join I hvilken periode har Anders ansvaret for gymnastikkurset ''Dansegymnastik"? SELECT gf_kursusansvar.periodeFROM gf_kurser, gf_personer, gf_kursusansvarWHERE gf_kurser.kursusnavn = 'Dansegymnastik'AND gf_kurser.kursus_id = gf_kursusansvar.kursus_idAND gf_personer.navn LIKE 'Anders%'

  11. Join Hvem er kursusansvarlig(e) for "Far, mor & børn"-kurser;SELECT gf_personer.navnFROM gf_kurser, gf_personer, gf_kursusansvarWHERE gf_personer.person_id = gf_kursusansvar.person_id AND gf_kurser.kursus_id = gf_kursusansvar.kursus_idANDgf_kurser.kursusnavn = "Far, mor & børn"

  12. Join (fra sidste uges opgave;)SELECT gf_kurser.kursus_id, gf_kurser.kursusnavn, gf_personer.navn AS ansvarligFROM gf_kurser, gf_personer, gf_kursusansvar WHERE (gf_kurser.kursus_id = gf_kursusansvar.kursus_id AND gf_personer.person_id = gf_kursusansvar.person_id AND periode = 'F2003')

  13. Join med WHERE I hvilken periode har Anders ansvaret for gymnastikkurset ''Dansegymnastik"? SELECT gf_kursusansvar.periodeFROM gf_kurser, gf_personer, gf_kursusansvarWHERE gf_kurser.kursusnavn = 'Dansegymnastik'AND gf_kurser.kursus_id = gf_kursusansvar.kursus_id AND gf_kursusansvar.person_id =gf_personer.person_id AND gf_personer.navn LIKE 'Anders%' Joining de tre tabeller gf_kurser, gf_personer og gf_kursusansvar

  14. Join med JOIN- syntaks • http://www.mysql.com/doc/en/JOIN.html

  15. JOIN-syntaks SELECT gf_kursusansvar.periode FROM gf_kursusansvar AS ansvar JOIN gf_kurser ON gf_kursusansvar.kursus_id= gf_kurser.kursus_id JOIN gf_personer ON gf_personer.person_id = gf_kursusansvar.person_id WHEREgf_kurser.kursusnavn = 'Dansegymnastik‘ ANDgf_personer.navn LIKE 'Anders%'

  16. Aggregerede udtræk • COUNT(Fieldname) • SUM(Fieldname) • MIN(Fieldname) • MAX(Fieldname) Tæller, lægger sammen, finder mindste og største Forudsætter anvendelsen af GROUP BY-kommando

  17. Manipulere data Rediger Dortes navn: Update gf_personer SET navn = 'Dorte Degn' WHERE navn LIKE 'Dorte%' Overvej nøje hvad du redigerer i!!

  18. Indsætte data Indsæt nye kurser: INSERT INTO gf_kurser (kursusnavn) VALUES(’Spring'),(’Puls’)

  19. Datatyper TINYINT[(length)] [UNSIGNED] [ZEROFILL]SMALLINT[(length)] [UNSIGNED] [ZEROFILL]MEDIUMINT[(length)] [UNSIGNED] [ZEROFILL]INT[(length)] [UNSIGNED] [ZEROFILL]INTEGER[(length)] [UNSIGNED] [ZEROFILL]BIGINT[(length)] [UNSIGNED] [ZEROFILL]REAL[(length,decimals)] [UNSIGNED] [ZEROFILL]DOUBLE[(length,decimals)] [UNSIGNED] [ZEROFILL]FLOAT[(length,decimals)] [UNSIGNED] [ZEROFILL]DECIMAL(length,decimals) [UNSIGNED] [ZEROFILL]NUMERIC(length,decimals) [UNSIGNED] [ZEROFILL]CHAR(length) [BINARY] VARCHAR(length) [BINARY]DATETIMETIMESTAMPDATETIMETINYBLOBBLOBMEDIUMBLOBLONGBLOBTINYTEXTTEXTMEDIUMTEXTLONGTEXTENUM(value1,value2,value3,...)SET(value1,value2,value3,...)

  20. ACID ACID står for Atomacy – en transaktion er enten fuldt udført eller slet ikke udført. Consistency – transaktioner sender databasen fra en legal tilstand til en anden legal tilstand. Isolation – transaktion er usynlig for andre transaktioner indtil transaktionen er komplet. Durability – komplette transaktioner overlever fremtidige systemcrash.

  21. Anvendelsen af HTML-formvariabler HTML-formvariabler findes i to typer <form method=”post” action=”receivingscript.php”> eller <form method=”get” action=”receivingscript.php”> HTML-formvariabler kommre fra HTML-formelementer <input type=”text” name=”formvariabelnavn” value=”formvariabelværdi“> - men lige så vel fra a- elementer: <a href=”receivingscript.php?formvariabelnavn=formvariabelværdi”> - eller endda <form method=”post” action=”receivingscript.php?formvariabelnavn=formvariabelværdi”> - eller rettere <input type=”hidden” name=”formvariabelnavn” value=”formvariabelværdi“>

More Related