Databasutveckling Introduktion © Copyright Mahmud Al Hakim [email protected] www.webacademy.se Agenda Introduktion till kursen och genomgång av kursplanering Introduktion till databaser MS SQL Server - Installation och konfiguration SQL Server Management Studio (SSMS) Northwind Databas Copyright Mahmud Al Hakim www.webacademy.se 2015 2 1 Kursinnehåll I denna kurs får studenten lära sig hur en databashanterare och databas fungerar och är uppbyggd. Kursen belyser SQL, behandlar skillnader mellan olika databaser, hur man bygger normaliserade databaser samt vad transaktionshantering innebär. Kursen behandlar även hur man förvaltar databassystem och lösningar för prestandaoptimering av SQL. Copyright Mahmud Al Hakim www.webacademy.se 2015 3 Kurslitteratur 1 ◦ Beginning SQL Server for Developers By Robin Dewson Copyright Mahmud Al Hakim www.webacademy.se 2015 4 2 Kurslitteratur 2 Grunderna i SQL (Viktigt) www.w3schools.com/sql Copyright Mahmud Al Hakim www.webacademy.se 2015 5 Tips: En webbkurs om databaser databasteknik.se/webbkursen Copyright Mahmud Al Hakim www.webacademy.se 2015 6 3 Kursplanering 9 föreläsningar (teori, demonstrationer och övningar) 3 laborationer 2 inlämningsuppgifter (måste redovisas) All redovisning sker muntligen under schemalagd tid för laborationer Eventuella kompletteringar ska åtgärdas och redovisas snarast. Copyright Mahmud Al Hakim www.webacademy.se 2015 7 Vad är en databas? 1. Nationalencyklopedin Databas, mängd av data, ordnade i ett eller flera dataregister, som är tillräcklig för ett visst ändamål eller för ett visst databehandlingssystem. En databas är normalt organiserad så att upprättande och underhåll av databasen samt uttag av data sker med hjälp av en för ändamålet generell programvara, ett databashanteringssystem (DBHS) och så att data i databasen är oberoende av de datorprogram som utnyttjar dem och således kan användas i olika tillämpningar. Snabb åtkomst till data i databasen är ett annat kännetecken Copyright Mahmud Al Hakim www.webacademy.se 2015 8 4 Vad är en databas? 2. Wikipedia En databas (tidigare databank) är en samling information som är organiserad på ett sådant sätt att det är lätt att söka efter och hämta enskilda bitar information, samt ofta även att ändra informationen. Ordet databas kan beteckna informationen som finns lagrad, eller den programvara (databashanterare) som förstår att tolka den ofta mycket komplexa datastrukturen som lagras på hårddisken. Databaser nås via ett s.k. gränssnitt. https://sv.wikipedia.org/wiki/Databas Copyright Mahmud Al Hakim www.webacademy.se 2015 9 Vad är en databas? 3. Paginas IT-Ordbok http://itord.pagina.se/default.asp?Id=1276 En databas är en samling information som organiserats så att ett dataprogram snabbt kan hitta önskade data. En databas är ett elektroniskt kortregister. Traditionella databaser organiseras i fält, poster och filer. Ett fält är en enskild datamängd, en post är en uppsättning sammanhörande fält och en fil är en samling poster. En enkel telefonkatalog kan jämföras med en fil. Den innehåller en lista med poster som var och en innehåller tre fält: namn, adress och telefonnummer. För att hantera informationen i en databas används ett databashanteringssystem (Database Management System, DBMS). Detta är en samling program för att lägga in, organisera och hämta ut data i en databas. Uttrycket databas används numera oftast för att beteckna ett helt databashanteringssystem. Copyright Mahmud Al Hakim www.webacademy.se 2015 10 5 Relationsdatabas En relationsdatabas är en databas där information ("data") är organiserad i relationer (även kallade tabeller). Termen "relationsdatabas" definierades ursprungligen 1969 av Edgar Codd på IBM. Bland de mer kända större relationsdatabaserna räknas idag Oracle, Microsoft SQL Server, IBM DB2 och MySQL. Källa: https://sv.wikipedia.org/wiki/Relationsdatabas Copyright Mahmud Al Hakim www.webacademy.se 2015 11 Exempel på Databashanteringssystem (DBMS) MS SQL Server www.microsoft.com/sql Oracle Database www.oracle.com MySQL www.mysql.com IBM DB2 www.ibm.com/db2 Tips https://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems Copyright Mahmud Al Hakim www.webacademy.se 2015 12 6 Gartner Magic Quadrant for Operational DBMS http://www.odbms.org/2014/11/gartner-2014-magic-quadrant-operational-database-management-systems-2/ 13 DB-Engines Ranking http://db-engines.com/en/ranking Copyright Mahmud Al Hakim www.webacademy.se 2015 14 7 Genealogy of Relational Database Management Systems http://hpi.de/naumann/projects/rdbms-genealogy.html Copyright Mahmud Al Hakim www.webacademy.se 2015 15 Vad är SQL? Structured Query Language (SQL) är ett standardiserat programspråk för att hämta och modifiera data i en relationsdatabas. Under 1970 utvecklade IBM ”Structured English Query Language” (SEQUEL). SEQUEL byttes senare ut mot SQL eftersom 'SEQUEL' var ett varumärke i USA. 1986 SQL är ANSI-standard 1987 SQL är ISO-standard SQL:2011 är den senaste versionen Copyright Mahmud Al Hakim www.webacademy.se 2015 16 8 MS SQL Server Microsoft SQL Server är Microsofts databashanterare. Liksom de flesta andra är den av relationstyp med SQL som frågespråk. SQL-dialekten som används heter Transact-SQL (T-SQL). 1989 SQL Server 1.0 (16 bit) 2000 SQL Server 2000 2010 Azure SQL DB 2012 SQL Server 2012 2014 SQL Server 2014 2016 SQL Server 2016 Copyright Mahmud Al Hakim www.webacademy.se 2015 17 SQL Server-utgåvor (Editions) Enterprise SQL Server Enterprise erbjuder omfattande datacenterfunktioner för krävande databas- och business intelligence-behov. Standard SQL Server Standard erbjuder kärnfunktioner för datahantering och business intelligence för icke-kritiska laster med minimala ITresurser. Business Intelligence SQL Server Business Intelligence gör så att organisationer kan bygga och distribuera säkra, skalbara och hanterbara BI-lösningar med självservice för företag. Express SQL Server Express är en kostnadsfri utgåva av SQL Server som är idealisk för att utveckla skrivbordsapplikationer, webbapplikationer och små serverapplikationer. Källa: http://www.microsoft.com/sv-se/server-cloud/products/sql-server-editions/default.aspx 18 9 Ladda ner och installera MS Server Express Copyright Mahmud Al Hakim www.webacademy.se 2015 19 Välj SQL Server 2014 Express with Advanced Services (eller with Tools) This is the most full featured member of the different SQL Server 2014 editions. It includes the SQL Server Express relational database engine, SQL Server 2014 Management Studio, the option to install LocalDB as well as Full Text Search and Reporting Services. This version is best for small application developers who also wish to implement reporting with their applications. Copyright Mahmud Al Hakim www.webacademy.se 2015 20 10 OBS! Viktigt Copyright Mahmud Al Hakim www.webacademy.se 2015 21 SQL Server Management Studio SQL Server Management Studio är en applikation lanserades med Microsoft SQL Server 2005 som används för att konfigurera , hantera och administrera alla komponenter inom Microsoft SQL Server. Copyright Mahmud Al Hakim www.webacademy.se 2015 22 11 Northwind databas Northwind är en välkänd databas som ingår i Microsoft databasprodukter (SQL Server och Access). Databasen används för utvecklingsändamål och för att testa funktioner och finesser på SQL Server. Northwind är ett exempel på en databas till ett ordersystem. Copyright Mahmud Al Hakim www.webacademy.se 2015 23 Lägga Northwind till SSMS 1. Starta Management Studio Högerklicka på Databases Välj Attach… 2. Klicka på Add… Välj NORTHWND.MDF 3. Ta bort NORTHWND_log.ldf (en ny log-fil kommer att skapas!) 4. OK Copyright Mahmud Al Hakim www.webacademy.se 2015 24 12 Om du får problem… Copyright Mahmud Al Hakim www.webacademy.se 2015 25 Högerklicka på filen och välj Egenskaper. Under fliken Säkerhet klicka på Redigera för att ändra behörighet Ändra filens behörighet Copyright Mahmud Al Hakim www.webacademy.se 2015 26 13 Leta efter northwind och undersök databasen Copyright Mahmud Al Hakim www.webacademy.se 2015 27 28 14