Test

Beginning Databases with MySQL

Beginning databases with MySQL er skriven av Neil Matthew og Richard Stones, og publisert av Wrox. Den består av 575 sider, som er 16 kapittel og 6 tillegg. Boka er ei bok for dei komplette nybyrjarane når det gjeld databasar og spesielt MySQL. Eg har nytta boka som lesestoff før ein eksamen, noko som eg trur gjekk bra, men resultata har eg enno ikkje fått attende.

Forfattarane har svært god kjennskap til emnet, og har erfaring frå mange ulike programmeringsspråk og operativsystem. Boka byrjar enkelt med å forklare kva ein database er, kva som skiljer ein database, flate tekstfiler og rekneark, introduserer ulike databasemodellar, og fortel om MySQL. Dei forklarar enkelt kva som er begrensningane med rekneark, og kvifor ein bør nytta ein database.

BokaDet vert godt forklart korleis ein skal dele opp databasane i tabellar, for å få logiske einingar grupperte ilag. Ved hjelp av dømer framstiller dei og korleis ein skal bryte ein tabell opp i kolonnar i størst mogleg grad, korleis ein lettast mogleg skal kunne identifisere visse rader i tabellar, og verte kvitt oppattgåande informasjon. Dei fortel og om kva som kan vere gode namnereglar for rader og tabellar, men samstundes gjev dei lesaren mogleiken til å tenke på kva namnereglar og oppsett som vil vera lettast å nytte.

Det vert nytta eit døme gjennom heile boka, ein database som skal halde informasjon om lagerstatus, ordrar, bestillingar og brukarar hos ein butikk. Etter at dei har gjeve oss ein god introduksjon til databasar, får me instruksjonar om korleis me skal setje opp MySQL på Linux og Windows. Dei gjennomgår òg kompilering av MySQL frå kildekoden, samt informasjon om oppsett.

Når me har fått ein god gjennomgang av installasjonen, byrjar dei med å byggje opp testdatabasen eg nemnte over, ved hjelp av ferdige kommandoar. Me skal så lære oss å hente ut data frå databasen, gode og dårlege måtar å gjere det på og korleis ein kan nytta SELECT til å gjere utrekningar. Seinare går dei gjennom korleis me skal hente ut enkle rader i tabellane ved å samanlikna visse felt i tabellane med kjende verdiar. Dei går rett vidare på samanføyingar av både to og tre tabellar, såkalla joins.

Neste kapittel fortel om vanlege grafiske verktøy for bruk i lag med MySQL, slik som KSql, KMySQL, MySQLGUI, ODBC, Microsoft Access og Excel. Det er ein hurtig gjennomgang av kvart verktøy, der dei nemner berre dei viktigaste mogleikane. Vidare fortsett dei med oppdatering og innsetjing av data i databasen, kva som er trygge måtar å gjere det på, og korleis ein kan importere data frå tekstfiler. Dei går og igjennom sletting av data frå databasen, noko som er svært enkelt å gjere feil.

Dei går vidare med meir avanserte måtar å velje data på, med bruk av aggregatfunksjonar, korleis ein skal gruppere felt når ein nyttar aggregatfunksjonar, osb.. Det vert etterpå diskutert samanslåing av to like felt i ulike tabellar (ein såkalla union join), samanslåing av ein tabell med seg sjølv (self join), og samanslåing av diverse felt i ulike tabellar med ein felles identifikator (outer join). Vidare går dei gjennom underspørjingar (subqueries), sjølv om dette ikkje er støtta i MySQL i dag.

Når me så kjem til kapittel 8, byrjar dei å vise oss dei ulike datatypane og korleis me nyttar dei til å lage tabellar. Etterpå kjem det ei grei oversikt over operatorar, innebygde variablar og funksjonar, og til slutt ein del om korleis ein manipulerer tabellar. Her får me sjølvsagt beskjed om at dersom me nyttar nok tid på designfasen av databasen, treng me ikkje å gjere endringar i etterkant. Det vert så kort fortalt om fjernnøklar, men dei går noko fort igjennom dette etter min smak. I motsetning til kva mange trur, så støtter faktisk MySQL fjernnøklar, men berre når ein nyttar InnoDB som tabelltype, noko som er godt påpeika i boka.

Transaksjonar og låsing av tabellar kjem i kapittel 9, der det vert god forklart kva transaksjonar er, og kvifor me treng dei. Igjen må ein nytta InnoDB-tabellar for å kunne nytte transaksjonar, sidan det ikkje er støtta på den vanlege tabelltypen, MyISAM. Men, dei gjennomgår her alternative måtar å få til transaksjonar, sjølv om dette medfører låsing av heile tabellar.

No byrjar dei på administrasjon av databasane, med korleis ein startar og stoppar MySQL, korleis ein legg til, fjernar og endrar rettane til brukarar, og korleis ein tek tryggleikskopiar av databasen.

Vidare har dei eit lengre kapittel om god databasedesign, kor ein skal byrja, og kva som er viktig for ein database. Her fortel dei òg om normalisering, som er ein viktig del av designprosessen. Dei tek òg opp vanlege problem omkring evner som mange-til-mange relasjonar, hierarkiske relasjonar og rekursive relasjonar.

Deretter byrjar dei på 4 gode kapittel som omhandlar tilgang til MySQL frå ulike programmeringsspråk. Språka dei tek for seg er C/C++, PHP, Java og Perl. Døma er som tidlegare i boka gode, og godt forklarte, sjølv om ein kan finne småting som er dårlege måtar å gjere ting på når ein kjenner programmeringsspråka godt. Det er ikkje noko å trekke boka for, og noko må ein jo la lesaren finne ut av sjølv.

Siste kapittelet fortel om lagring utan relasjonar, terminologi som er viktig når ein arbeidar med databasar, og ressursar på nettet, verktøy som er greie å ha, samt andre bøker som dei meiner er interessante å lese.

Tillegga i boka går blant anna ut på storleiksavgrensingar i MySQL-databasar, ei skjematisk oversikt over dei ulike datatypane, ei opplisting av syntaksen i MySQL, eit nøyaktig oppsett av dømedatabasen, og korleis ein skal nytte BLOB (store binære objekt) i ein MySQL database.

Det som eg saknar i denne boka er at dei ikkje viser dei spesifikke ulikskapane mellom standard SQL og MySQL. Det hadde vore greit om dei hadde lagt til ein godt synlig notis kvar gong døma dei nytta ikkje stemde med SQL92, noko som dei berre har gjort i svært få tilfeller. Om ein tek med i berekninga at boka er berekna på personar som ikkje har nytta databasar før, vil nok ikkje dette vege så tungt, men i mitt eige tilfelle var dette eit sakn.

Boka er på engelsk, og ein må vere relativt stødig i engelsk for å få med seg alt. Språket er likevel ikkje av det mest avanserte eg har vore borti, og døma dei nyttar er svært lettfattelige. Om du ikkje er så stø i engelsk, kjem du deg likevel gjennom boka ved hjelp av ei ordbok og litt velvilje.

For å oppsummere er boka ei grei innføring i MySQL med få manglar. Om du får problem med det som står i boka, kan du kontakta Wrox via internett, der forfattarane gjev deg støtte dersom du får problem.

Norges beste mobilabonnement

Desember 2016

Kåret av Tek-redaksjonen

Jeg bruker lite data:

ICE Mobil 1GB


Jeg bruker middels mye data:

Hello 5GB


Jeg bruker mye data:

Hello 10 GB


Jeg er superbruker:

Telia Smart Total


Finn billigste abonnement i vår mobilkalkulator

Forsiden akkurat nå

Til toppen