L0009B
Moment
FL 1: Kursintroduktion.
Kursinformation: G:\L0009B\Allmänt\KursInformationL0009B.pdf (F)
Kursplan: Se https://portal.student.ltu.se/stuka/kurs.php?kurs=L0009B&lang=swe (F)
Allt som markerats med (F) är primärt material som normalt tas upp på föreläsningarna.
Allmänt: Observera att de material som är utdrag ur
manualer oftast inte ska läsas i sin helhet. Det ska fungera
mer som referensmaterial och det som ska läsas noggrannt
är de delar som tas upp på föreläsningarna (oftast powerpointshower) eller som anges av läraren på
annat sätt.
Det kan komma att bli lite ändringar vad gäller innehållet och därmed vad som tas upp på
föreläsningarna. I skrivandets stund så håller jag på med att gå igenom ArcGis geodatabase som är e
ganska nytt spatialt dataformat designat speciellt för ArcGis. Geodatabase är intressant eftersom
formatet erbjuder många fördelar jämfört med andra spatiala dataformat. Jag kommer att hålla er
underrättade om ändringarna via era mail på LTU. Det
är viktigt att ni ser till att ha åtkomst till denna och regelbundet kollar information där. Hur ni skaffa
tillgång till mail på LTU framgår av allmän information som ni fått skickat till er via post.
Boken får tjäna som en röd tråd i delar av kursen. Mina föreläsningar är i huvudsak inte planerade
utifrån boken utan annat material som t ex white papers och manualer.
Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F)
1
FL 2: SQL 92, G:\L0009B\SQL92\
Vi använder SQL Server som databashanterare i huvudsak och utdrag ur manualer avser denna
databashanterare.
Här finns inget motsvarande avsnitt i kursboken, men väl i referenslitteratur som ni troligen har
från grundkursen i databaser.
• G:\L0009B\SQL92\SQL92.pdf (F) . Föreläsningsmaterial som tas upp i sin helhet.
Behandlar datadefinitionsspråket (DDL i SQL 92).
• G:\L0009B\SQL92\CreateTable.pdf (O). Material ur “SQL Server Books Online” som ni
även kan nå via Help i SQL Server. Innehåller fullständig syntax för CREATE TABLE i
SQL 92. Materialet innehåller även exempel. Läs i första hand de delar som tas upp i
SQL92.pdf.
• G:\L0009B\SQL92\Tables.pdf (O). Även detta material ur “SQL Server Books Online”. En
mer beskrivande dokumentation om skapandet av tabeller enligt SQL 92 i SQL Server.
• G:\L0009B\SQL92\DataIntegritet.pdf (O). Material ur “SQL Server Books Online” som
förklarar hur dataintegritet (objekt-, referens-, affärsintegritet m fl) kan realiseras i SQL 92.
• G:\L0009B\SQL92\SQLAvancerad.pdf (O). Material ur T Connolly m fl, Database
Systems – A practical approach to Design, Implementation and Management, kapitel 14
som behandlar DDL m m SQL 92. Observera att detta är syntax enligt standarden och kan
vara lite annorlunda i SQL Server.
• G:\L0009B\Join\SQL.pdf (O), bilderna 81-105. Material ur T Connolly m fl, Database
Systems – A practical approach to Design, Implementation and Management, kapitel 13
som behandlar Natural Join och Outer Join m m enligt SQL 92
• G:\L0009B\Join\Join.pdf (O). Material ur “SQL Server Books Online” som förklarar
vanliga joins enligt SQL Server.
• G:\L0009B\Join\Joins.pdf (F). Mitt material om Outer Join som ju är det som eventuellt inte
tagits upp i grundkursen.
•
L 1: Ni måste få en databas med användaridentitet
och lösenord av läraren. Sedan kan ni designa och definiera tabellerna för övningsdatabasen
boken
SQL Introduktion, M Segerlund och F Stridsman, tabellerna elev, kurs, tentamen med
avseende på
vad ni nu lärt er om möjligheterna i DDL.
Om du inte har den boken så finns databasen att betrakta i SQL Server och kallas Ovning.
• Användande av SQL Server Management Studio finns i instruktionerna. Här kommer ni att
arbeta med den senare produkten. G\L0009B\Instruktion\SQLServer2005.pdf (O)
FL 3: Fortsättning på FL 2 och sedan
Stored Procedure Language (SPL) o Triggers, G:\L0009B\SPLoTriggers\
Möjligheten att skriva egna procedurer eller funktioner i databashanteraren finns numera i de flesta
stora produkter
som SQL Server, Oracle, DB2 m fl. Dessutom finns
möjlighet att definiera s k Triggers, en kodmassa som kan exekveras vid förändringar i databasen.
Dessa delar är ännu inte standardiserade men liknar varandra ganska mycket mellan produkterna.
Genom alla dessa möjligheter, DDL,
SPL och Triggers så flyttar vi alltså stora delar av kod som tidigare tillhört det traditionella
programmet in i databashanteraren.
• G:\L0009B\SPLoTriggers\ArtikelCS2003_110.pdf (O). Artikel från Computer Sweden, 2003
nr 110 om olika strategier vad gäller utnyttjande av databasen för att hantera funktionalitet
• G:\L0009B\SPLoTriggers\Procedurer.pdf (F). Föreläsningsmaterial som tas upp i
2
•
•
•
•
•
•
•
sin helhet. Behandlar Stored Procedures i SQL
Server.
G:\L0009B\SPLoTriggers\StoredProcedures.pdf (O).
Material ur “SQL Server
Books Online” som behandlar Stored Procedures i SQL Server.
G:\L0009B\SPLoTriggers\CreateProcedure.pdf (O).
Material ur “SQL Server
Books Online” som tar upp den fullständiga
syntaxen för definition av Stored Procedures. Här finns även att antal exempel för definition
och exekvering.
G:\L0009B\SPLoTriggers\Functions.pdf (Ö). Material ur “SQL Server Books Online” som
behandlar Functions i SQL Server. Det går alltså att definiera funktioner som
kan returnera värden genom anropet. Överkurs)
G:\L0009B\SPLoTriggers\Trigger.pdf (F). Föreläsningsmaterial som tas upp i
sin helhet. Behandlar Triggers i SQL
Server. Triggers är kod som exekveras vid förändringar i databasen (INSERT, DELETE och
UPDATE).
G:\L0009B\SPLoTriggers\Triggers.pdf (O).
Material ur “SQL Server Books Online” som behandlar
Triggers i SQL Server.
G:\L0009B\SPLoTriggers\SQL3Triggers.pdf (O). Material ur T Connolly m fl, Database
Systems – A practical approach to Design, Implementation and Management, kapitel 23
som bl a behandlar Triggers i SQL3. Observera att detta är syntax enligt standarden och
kan vara lite annorlunda i SQL Server.
G:\L0009B\SPLoTriggers\CreateTrigger.pdf (O).
Material ur “SQL Server Books Online” som tar upp
den fullständiga syntaxen för definition av Triggers.
Här finns även att antal exempel på definition.
L 2: Underlag finns i katalogen G:\L0009B\ExaminationInlämningsuppgift
• Ni startar med inlämningsuppgiften som finns
beskriven i filen G:\L0009B\ExaminationInlämningsuppgift\DatabasImplementation.pdf (F).
• I filen G:\L0009B\ExaminationInlämningsuppgift\TestDatabasImplementation.pdf (F) finns
ett
script för test av inlämningsuppgiften.
FL 4: Stored Procedure Language (SPL), Triggers
• Eventuell fortsättning på föreläsningen enligt ovan
och fortsättning enligt nedan
• Genomgång inlämningsuppgift om oklarheter
FL 5: Geografisk databasteknik; spatiala data, spatiala databaser och spatial sökning
• G:\L0009B\OpenGis\SimpleFeaturesOGC.pdf (F). En powerpointshow om Simple Features
som får vara vägledande vad gäller det som ska läsas i övriga material om Simple features.
Simple features har
både spatial och icke-spatiala attribut, baserade på
2-D geometri med linjär interpolation mellan hörn.
De objekt vi i första hand vill hantera i databaser, dvs komma åt, analysera och uppdatera.
• G:\L0009B\OpenGis\OGCSimpleFeatureSQLXMLGML.pdf (O). ESRI White Papers.
• G:\L0009B\OpenGis\SimpleFeatures.pdf (O). ESRI
White Papers.
3
•
•
•
•
•
•
•
•
•
•
G:\L0009B\ShapeFil\ShapeFiler.pdf (F).
En powerpointshow om shape-filer.
G:\L0009B\ShapeFil\ShapeFile.pdf (O). ESRI
Shapefile Technical Description. Ett så kallat
White Paper från ESRI som skapat specifikationen för shape-filer som är ett mycket vanligt
format för geografiska data. Läs sidorna 1-10(mitten av sidan) samt 24-28.
G:\L0009B\SpatialSökning\MOSpatialSökning.pdf (F).
En Wordfil som beskriver vilka spatiala operationer/operatorer som finns i ESRI’s ActiveXkomponent MapObjects. Materialet visar också exempel på kod över hur dessa kan användas
Visual Basic programkod. MapObjects kan aktiveras
i t ex Visual Basic eller C++ och ge möjligheter att skräddarsy kartfunktionalitet i
applikationer.
G:\L0009B\SpatialSökning\IntroSpatialDB.pdf (F). En powerpointshow som introduktion til
spatiala databaser baserat på Oracle Spatial.
G:\L0009B\ShapeFil\LaddaShape.pdf (F). Beskriver
hur man laddar (konverterar) shape-filer till Oracle
Spatial.
G:\L0009B\SpatialSökning\SpatialDatabases.pdf (O).
En powerpointshow från leverantören Oracle.
G:\L0009B\SpatialSökning\Oracle.pdf (F). Egen powerpointshow som får vara vägledande
till det
stora heltäckande materialet Spatial_User_guide.pdf.
Detta material kompletteras med ett material över ett
antal exempel och sedan är det bara att botanisera i
users guide för att lösa laboration och
inlämningsuppgift.
G:\L0009B\SpatialSökning\Översikt.pdf (O). Ett Oracle White Paper som introduktion till
Oracle Spatial.
G:\L0009B\SpatialSökning\Spatial_User_guide.pdf (O).
En s k users guide och reference för Oracle Spatial. Den huvudsakliga litteraturen för att lära
sig
använda Oracle Spatial.
G:\L0009B\SpatialSökning\OracleSpatialSQL.txt (F)
Exempel på spatiala sökningar bl a.
L 3:
•
G:\L0009B\SpatialSökning\Laboration.pdf (F).
Innehåller syntaxbeskrivningar, exempel och några uppgifter.
• G:\L0009B\Instruktion\OracleEnterpriseManager.pdf
(F)
Instruktion för att kunna jobba med verktyget.
• G:\L0009B\Instruktion\OracleSQLPlusWorksheet.pdf (F). Instruktion för att kunna jobba
med verktyget.
• G:\L0009B\SpatialSökning\LösningLab.txt (F).
FL 6: Geografisk databasteknik; spatiala data, spatiala databaser och spatial sökning, forts
L 4: Inlämningsuppgiften
• G:\L0009B\ExaminationInlämningsuppgift\OracleSpatialInlUppg.pdf (F).
4
FL 7: Geografisk datamodellering.
Om du inte har kunskaper i datamodellering så ska du se materialet för L0003B. Läs och begrunda
materialet under G:\L0003B\Datamodellering
• G:\L0009B\GeografiskDM\GeoDM.pdf (F)
FL 8: Spatial indexering, G:\L0009B\SpatialIndex\
För att förstå spatiala index så bör man först förstå hur
B-träd är uppbyggda för vanliga index. Spatial indexering
är mycket mer komplex än vanlig indexering och jag tar i huvudsak upp s k Quad-Tree indexering o
R-Tree indexering.
• G:\L0009B\SpatialIndex\BTree.pdf (F).
Föreläsningsmaterial ur kursen SBG027 som behandlar B-träd.
• G:\L0009B\SpatialIndex\Index.pdf (F).
Baseras på kapitel 6 i boken M F
Worboys, GIS A Computing Perspective, Taylor & Francis, 0-7484-0065-6
• G:\L0009B\SpatialIndex\StructuresAccessMethods.pdf (O). Textutdrag ur bok enligt ovan.
• Kap 3.3 i G:\L0009B\SpatialSökning\Översikt.pdf (O)
Beskriver kort indexering i Oracle 9i.
• Bilderna 21-27 i G:\L0009B\SpatialSökning\Spatial8i-9i.pdf
• Kap 4.1 i G:\L0009B\SpatialSökning\Spatial_User_guide.pdf
Beskriver indexering och användning av index i
Oracle 9i.
L 5:
• G:\L0009B\ExaminationInlämningsuppgift\DBDesignInluppg.pdf
Vidare finns en inlämningsuppgift som innebär ett antal frågor som täcker stora delar av kursen. De ska
besvaras skriftligt med källhänvisningar.
•
Underlag till uppgifterna finns på G:\L0009B\ExaminationInlämningsuppgift\Frågor.pdf
FL X: ArcCatalog
• G:\L0009B\ArcGISMaterial\ArcGIS_Desktop\Building_a_Geodatabase.pdf
• G:\L0009B\ArcGISMaterial\ArcGIS_Desktop\ArcGisIntro.pdf
Självstudiematerial, kap 1-6, 8, del av 12
• Inlämningsuppgift består i att realisera den databas som modellerats fram i
G:\L0009B\ExaminationInlämningsuppgift\DBDesignInluppg.pdf med hjälp av ArcCatalog.
• Kartmaterial finns på I:\
5