WCMS-15, Webbutvecklare CMS Övningstentamen, delkurs Dynamiska webbplatser (20 YH-poäng) Plats: Medieinstitutet, Malmö Tid: 25 november 2015, kl. 13.00-16.00 Tillåtna hjälpmedel: Papper, penna, suddgummi, linjal. Ej tillåtna hjälpmedel: Datorer, mobiltelefoner, surfplattor, miniräknare, böcker, anteckningar, kompendier etc. Max poäng: 37 poäng Betygsgränser Godkänt: 22, Väl godkänt: 31 Examinator: Nej, övningstenta Sida 1 av 10
Ditt namn: Läs igenom frågorna på följande sidor och välj svarsalternativ. FYLL I DITT NAMN (!) och kryssa i dina svar på denna sida. (Mer än ett ikryssat svar per fråga ger 0 poäng på frågan.) Lämna ENDAST in denna sida! Grunder Fråga 1 a b c d Fråga 2 a b c d Fråga 3 a b c d Fråga 4 a b c d Fråga 5 a b c d Fråga 6 a b c d Enkel SQL-syntax Fråga 7 a b c d Fråga 8 a b c d Fråga 9 a b c Fråga 10 a b c d Ändra data m.m. Fråga 17 a b c Fråga 18 a b c Fråga 19 a b c d Fråga 20 a b c d Normalformer Fråga 21 a b c d Fråga 22 a b c d Fråga 23 a b c Fråga 24 a b c d Fråga 25 a b c Fråga 26 a b c Mer syntax Fråga 11 a b c d Fråga 12 a b c d Fråga 13 a b Fråga 14 a b c Fråga 15 a b c d Fråga 16 a b c d Relationer Fråga 27 a b c d Fråga 28 a b c d Fråga 29 a b c d Fråga 30 a b c d Fråga 31 a b c d Fråga 32 a b c d PHP Fråga 33 a b c d Fråga 34 a b c d Fråga 35 a b c d Fråga 36 a b c d Fråga 37 a b c d Sida 2 av 10
Grunder Fråga 1 Fråga 2 Vilket SQL-kommando används för att lägga till data i en tabell? a) INSERT NEW b) INSERT INTO c) ADD RECORD d) ADD NEW Vilket SQL-kommando används för att uppdatera data i en tabell? a) UPDATE b) SAVE AS c) MODIFY d) SAVE Fråga 3 Fråga 4 Vilket SQL-kommando används för att fråga efter/läsa data i en tabell? a) OPEN b) SELECT c) EXTRACT d) GET Vilket SQL-kommando används för att radera data från en tabell? a) GONE b) COLLAPSE c) REMOVE d) DELETE Fråga 5 Fråga 6 Vilket SQL-kommando används för att skapa en tabell? a) CREATE TABLE b) MAKE TABLE c) NEW TABLE d) DROP TABLE Vad står SQL för? a) Strong Question Language b) Structured Query Language c) Structured Question Language d) Simple Question Learner Sida 3 av 10
Enkel SQL-syntax Fråga 7 Fråga 8 Hur väljer du ut kolumnerna FirstName och LastName från tabellen Persons? a) SELECT FirstName, LastName FROM Persons b) SELECT FROM Persons: FirstName, LastName c) SELECT Persons.FirstName.LastName d) EXTRACT FirstName + LastName FROM Persons Hur väljer du alla rader från tabellen Persons där kolumnen FirstName har värdet "Peter"? a) SELECT * FROM Persons WHERE FirstName='Peter' b) SELECT [all] FROM Persons WHERE FirstName LIKE 'Peter' c) SELECT * FROM Persons WHERE FirstName<>'Peter' d) SELECT [all] FROM Persons WHERE FirstName='Peter' Fråga 9 Fråga 10 Hur väljer du ut kolumnen FirstName från tabellen Persons? a) EXTRACT FirstName FROM Persons b) SELECT Persons.FirstName c) SELECT FirstName FROM Persons Hur väljer du ut alla kolumner från tabellen Persons a) SELECT * FROM Persons b) SELECT *.Persons c) SELECT Persons d) SELECT [all] FROM Persons Sida 4 av 10
Mer syntax Fråga 11 Fråga 12 Hur kan du få tillbaka alla rader från tabellen Persons sorterade fallande efter kolumnen FirstNames värden? a) SELECT * FROM Persons ORDER FirstName DESC b) SELECT * FROM Persons ORDER BY FirstName DESC c) SELECT * FROM Persons SORT 'FirstName' DESC d) SELECT * FROM Persons SORT BY 'FirstName' DESC Hur väljer du alla rader från tabellen Person där "LastName" alfabetisk befinner sig mellan (och inkluderar) "Hansen" och "Pettersen"? a) SELECT * FROM Persons WHERE LastName BETWEEN 'Hansen' OR 'Pettersen' b) SELECT * FROM Persons WHERE LastName > 'Hansen' AND LastName < 'Pettersen' c) SELECT LastName <'Hansen' AND LastName > 'Pettersen' FROM Persons d) SELECT * FROM Persons WHERE LastName BETWEEN 'Hansen' AND 'Pettersen' Fråga 13 Fråga 14 I en WHERE-sats används OR-operatorn för att visa en rad om alla villkor är sanna. ANDoperatorn visar en rad om något av villkoren är sanna. a) Detta stämmer. b) Detta påstående stämmer inte. Hur väljer du alla rader från tabellen Persons i vilka kolumnen FirstName har värdet "Peter" och kolumnen LastName har värdet "Jackson"? a) SELECT * FROM Persons WHERE FirstName='Peter' AND LastName='Jackson' b) SELECT * FROM Persons WHERE FirstName LIKE 'Peter' AND LastName LIKE 'Jackson' c) SELECT FirstName='Peter', LastName='Jackson' FROM Persons Fråga 15 Fråga 16 Vilket SQL-kommando används för att sortera resultatet av en fråga? a) SORT BY b) ORDER BY c) ORDER d) SORT Hur väljer du alla rader från tabellen Persons där kolumnen FirstName börjar med "a"? a) SELECT * FROM Persons WHERE FirstName LIKE '%a' b) SELECT * FROM Persons WHERE FirstName='a' c) SELECT * FROM Persons WHERE FirstName LIKE 'a%' d) SELECT * FROM Persons WHERE FirstName='%a%' Sida 5 av 10
Ändra data m.m. Fråga 17 Fråga 18 Hur kan du lägga till en ny rad i Personstabellen? a) INSERT INTO Persons (FirstName, LastName) VALUES ('Jimmy', 'Jackson') b) INSERT ('Jimmy', 'Jackson') INTO Persons c) INSERT VALUES ('Jimmy', 'Jackson') INTO Persons Hur kan du radera alla rader där kolumnen FirstName har värdet "Peter" från Personstabellen? a) DELETE FirstName='Peter' FROM Persons b) DELETE FROM Persons WHERE FirstName = 'Peter' c) DELETE ROW FirstName='Peter' FROM Persons Fråga 19 Fråga 20 Hur kan du räkna antalet rader i Personstabellen? a) SELECT COLUMNS(*) FROM Persons b) SELECT COUNT() FROM Persons c) SELECT COLUMNS() FROM Persons d) SELECT COUNT(*) FROM Persons How kan du ändra alla "Hansen" till "Nilsen" i kolumnen LastName i Persons-tabellen? a) UPDATE Persons SET LastName='Hansen' INTO LastName='Nilsen' b) MODIFY Persons SET LastName='Nilsen' WHERE LastName='Hansen' c) UPDATE Persons SET LastName='Nilsen' WHERE LastName='Hansen' d) MODIFY Persons SET LastName='Hansen' INTO LastName='Nilsen' Sida 6 av 10
Normalformer Titta på databasexemplen på sidan 10 och besvara följande frågor. Fråga 21 Fråga 22 I exempel 3: Hur många tabeller bör du ta bort data från om du raderar Anna Andersson? (Givet att vi vill ta bort adresser som ingen har, men behålla hobbies och postnummer-stadinformation som ingen har.) a) 3 b) 2 c) 4 d) 1 I exempel 3: Hur många tabeller bör du ta bort data från om du raderar Berit Bertilsson? (Givet att vi vill ta bort adresser som ingen har, men behålla hobbies som ingen har.) a) 4 b) 3 c) 2 d) 1 Fråga 23 Fråga 24 Vilken normalform uppfyller exempel 2? a) Ingen normalform b) 1NF, första normalformen c) 2NF, andra normalformen I exempel 3: Hur många tabeller bör du ta bort data från om du raderar Anders Andersson? (Givet att vi vill ta bort adresser som ingen har, men behålla hobbies och postnummer-stadinformation som ingen har.) a) 3 b) 1 c) 2 d) 4 Fråga 25 Fråga 26 Vilken normalform uppfyller exempel 3? Vilken normalform uppfyller exempel 1? a) 2NF, andra normalformen a) 1NF, första normalformen b) 1NF, första normalformen b) 2NF, andra normalformen c) Ingen normalform c) Ingen normalform Sida 7 av 10
Relationer Titta på databasexemplen på sidan 10 och besvara följande frågor. Fråga 27 Fråga 28 Vilken kolumn är en foreign key i tabellen persons i exempel 3? Vilken kolumn är en foreign key i tabellen adresses i exempel 3? a) adressid a) zipcode b) lastname b) ingen av dem c) email c) streetaddress d) id d) id Fråga 29 Fråga 30 Hur många gånger kan samma hobby förekomma (om vi bygger på databasen med fler personer och hobbies) i tabellen hobbies i exempel 2? a) Oändligt många gånger b) Ingen gång c) 3 gånger d) 1 gång Hur många tabeller skulle du kunna ta bort i exempel 3 om vi inte längre vill lagra en persons hobbies? a) 1 tabell b) 4 tabeller c) 2 tabeller d) 3 tabeller Fråga 31 Fråga 32 Vilket SQL-kommando skulle du använda för att bygga ihop ett svar som liknar tabellen i exempel 1 från tabellerna i exempel 3? a) MOVE b) UNION c) JOIN d) SUM Hur många gånger kan samma hobby förekomma (om vi bygger på databasen med fler personer och hobbies) i tabellen hobbies i exempel 3? a) Oändligt många gånger b) 3 gånger c) Ingen gång d) 1 gång Sida 8 av 10
PHP Fråga 33 Fråga 34 Vilken syntax lämpar sig bäst för att loopa igenom en numerisk array - $arr? a) foreach ($arr as $val){...} b) for($i, $j in $arr){...} c) foreach ($arr as $key => $val){...} d) for($i in $arr){...} Vad är värdet på variablen - $mynum när den här koden har körts? $mynum = 5; $mynum++; $mynum += 2; a) 9 b) 7 c) 6 d) 8 Fråga 35 Fråga 36 Med PHP kan man koppla sig till MySQL via flera olika inbyggda bibliotek. Viket är modernast och säkrast? a) mysql b) PDO c) Mongo.db d) mysqli Du skriver in följande URL till ett php-skript: - http://.../my-script.php?a=bc&d=e Vad kommer superglobalen $_GET att innehålla? a) ["a" => "bc", "d" => "e"] b) ["bc" => "a", "e" => "d"] c) ["a=bc", "d=e"] d) ["a", "b", "c", "d", "e"] Fråga 37 Vilken syntax lämpar sig bäst för att loopa igenom en associativ array - $arr? a) foreach ($arr as $val){...} b) for($i, $j in $arr){...} c) foreach ($arr as $key => $val){...} d) for($i in $arr){...} Sida 9 av 10
Databasexempel Sida 10 av 10