Database (Diplom i Webudvikling)

Besvar quizzer og spørgsmål i nedenstående sektioner trin for trin.

Du må ikke få hjælp fra andre.

Hvis du mener at programmeringssproget spiller en rolle for et resultatet, så antag at sproget er Java eller C#.

Resultatet af denne afprøvning er ikke selve din realkompetencevurdering, men kun tænkt som input til den samlede process med at vurdere dine kompetencer inden for dette fagområde.

Trin 1 – Forudsætninger for optagelse på fag

Den relationelle model

1. Relations-modellen er en...
2. Et sæt attribut værdier kaldes for en tuple.
3. Det mest benyttede sprog til at skrive data definitions og queries til relationelle databaser er...

4. Hvis du vil henvise til en række i én tabel fra en anden tabel, bruger du rækkens til at identificere rækken.


 

Normalisering

1.

Optil hvilken NF, følgende nedestående tabel?

Unormaliseret tabel
2. Hvem "opfandt" den Første Normalform tilbage i 1970 og dannede dermed grundlaget for den moderne database
3. Der må gerne være forskellige slags data (f.eks. fornavn og fødselsdato) i samme felt i en databasen som opfylder Første Normalform?
4. Hvor mange normalformer normaliserer man normalt til - nærmest som et minimum i programmering? (Note: Der kan være yderligere former end disse)
5.

Hvilken normalform opfylder følgende database billede

Hvilken normalform opfylder følgende database?

Database
6.

Hvilken normalform opfylder nedenstående tabel?

Normalform billede
7.

Hvilken normalform opfylder nedenstående database?

Normalform billede
8. Hvilken normalform er billedet?

Normalform
9. Hvilken normalform er billedet?

Normalform
10. Hvilken normalform er billedet?

Normalform
11.

Hvad er den højeste normalform, som denne tabel opfylder?

Normalform
12. En relation er i 1NF hvis den ikke indeholder nogen ____________?
13. En tabel er i 2NF hvis tabellen er i 1NF og hvilke andre betingelse er opfyldt?
14. Hvorfor er Normalisering bl.a. en god ide?

 

Datatyper

1. Hvilken datatype bør man vælge til en kolonne, hvis man ønsker den skal indeholde navnet på en person?
2. Hvad kaldes disse grundlæggende database begreber også?
Kolonner (columns)
Tupler (tuples)

Unselect

Attributter (attributes)

Unselect

Rækker (rows)
Tupler (tuples)

Unselect

Attributter (attributes)

Unselect

3. Hvad kalder man det felt man bruger til at identificere en række i en tabel i en database?

4. Du vil gerne have et medlemsnummer, altså et heltal, i et felt. Hvilken datatype er ideel til dette?
5. Du kan have tekst (bogstaver) i et tal-felt (INT, BIGINT, DECIMAL osv.)
6. Du kan have tal i et tekst-felt (CHAR, VARCHAR osv.)
7. Du har en database for en begivenhed, som indeholder en tabel, hvor interesserede folk er registreret.

I den tabel er der et felt, hvor der skal stå om folk faktisk deltager. Der er tale om en simpel ja/nej værdi, eller 0/1 om man vil. Hvilken datatype vil være mest ideel til dette?

8. gemmer år, måned og dag værdier.

gemmer time, minut og sekund værdier.

gemmer år, måned, dag, time, minut og sekund værdier.

9.

en tekststreng på en bestemt længde (n). Den skal være længde n.

en tekststreng med en variabel længde, dog maksimalt n.

et tal uden decimaler, maks 5 cifre.

et tal uden decimaler, maks 10 cifre.

et tal uden decimaler på maks p cifre.

et tal uden decimaler, maks 19 cifre.

et tal med decimaler.

10. Ved DECIMAL(p,s) er p og s...

 

SQL

1. Hvad betyder SQL

2. Hvis du vil slette alt fra en tabel, men ikke tabellen, hvilken af disse to er korrekt - eller er de det begge?
DELETE FROM table_name;
eller
DELETE * FROM table_name;
eller dem begge?

3. For at slette en tabel skal du skrive følgende kommando:

TABLE table_name;

4. Opdater indholdet af Lastname i tabellen "People" hvor "Firstname" er Hans

 People SET Lastname='Hansen'  Firstname ='Hans'
5. Der kan være flere rækker markeret som primær nøgler i en tabel
6. Hvilke af disse udsagn om en tabels nøgle er korrekt(e)?

7. Du vælger indholdet fra en tabel med følgende kommando:

 Firstname FROM People;

8.

Du vælger fra en tabel med følgende kommando

SELECT Firstname  People;

9. Skab den rette syntax, til at vælge 'id' fra 'students'. Resultatet skal være sorteret efter id i aftagende orden (højeste id først).

 id FROM students

 id 

10. Skab den rette syntax, til at vælge 'id' fra 'students'. Sorter resultatet efter id i stigende orden.

 id FROM students

 id 

 

Trin 2 – SQLs avancerede query-muligheder

I dette trin undersøger vi din viden om og færdigheder indenfor transaktioner

Join

I dette trin undersøger vi din viden om og færdigheder indenfor transaktioner

1. Udfyld det manglende, for at vælge: name, cost og bids fra tablen items. Vælg kun de "items" hvor "bids" er større end 123.

 name, , bids

items

 bids > 123;
2. Sammensæt de rigtige
SELECT * FROM TableA a LEFT JOIN TableB b ON a.Key = b.Key
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a LEFT JOIN TableB b ON a.Key = b.Key WHERE b.Key IS NULL
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a RIGHT JOIN TableB b ON a.Key = b.Key
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a RIGHT JOIN TableB b ON a.Key = b.Key WHERE a.Key IS NULL
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a FULL OUTER JOIN TableB b ON a.Key = b.Key
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a FULL OUTER JOIN TableB b ON a.Key = b.Key WHERE a.Key IS NULL OR b.Key IS NULL
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

SELECT * FROM TableA a INNER JOIN TableB b ON a.Key = b.Key
Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

Join

Unselect

3. Udfyld det manglende til 'outer join' tabellen 'items' med 'customers'.

SELECT customers.name, items.name customers JOIN items customers.id =seller_id

4. Hvad gør INNER JOIN?
5. Hvad gør UNION?
6. Hvilke fire standard egenskaber har en SQL Transaction?
7. Indtast kommandoen for at forene forespørgslens resultater, uden at fjerne dubletter.


 

Trin 3 – XML

I dette trin undersøger vi din viden om og færdigheder indenfor XML

I dette trin undersøger vi din viden om og færdigheder indenfor XML

1. Hvilken er korrekt XML?
2. Hvad er forkortelsen for Extensible Markup Language

3. Er dette korrekt XML:
<?xml version="1.0" encoding="UTF-8"?>
<note>
 <to>Tove</to>
 <from>Jani</from>
 <heading>Reminder<body>
 </heading>Don't forget me this weekend!</body>
</note>
4. Målet med XML er at erstatte HTML?

 

Trin 4 – Transaktioner

I dette trin undersøger vi din viden om og færdigheder indenfor transaktioner

1. Sammensæt de rigtig egenskaber for ACID
A
Enten udføres transaktionen eller også udføres den ikke

Unselect

Systemet er altid i en konsistent tilstand, da transaktionens parter er synkroniserede

Unselect

Transaktionen foregår isoleret fra omverdenen, så udefrakommende kan ikke se at en transaktion er i gang, inden den er afsluttet

Unselect

Når transaktionen er gennemført er den gemt og kan ikke længere rulles tilbage

Unselect

C
Enten udføres transaktionen eller også udføres den ikke

Unselect

Systemet er altid i en konsistent tilstand, da transaktionens parter er synkroniserede

Unselect

Transaktionen foregår isoleret fra omverdenen, så udefrakommende kan ikke se at en transaktion er i gang, inden den er afsluttet

Unselect

Når transaktionen er gennemført er den gemt og kan ikke længere rulles tilbage

Unselect

I
Enten udføres transaktionen eller også udføres den ikke

Unselect

Systemet er altid i en konsistent tilstand, da transaktionens parter er synkroniserede

Unselect

Transaktionen foregår isoleret fra omverdenen, så udefrakommende kan ikke se at en transaktion er i gang, inden den er afsluttet

Unselect

Når transaktionen er gennemført er den gemt og kan ikke længere rulles tilbage

Unselect

D
Enten udføres transaktionen eller også udføres den ikke

Unselect

Systemet er altid i en konsistent tilstand, da transaktionens parter er synkroniserede

Unselect

Transaktionen foregår isoleret fra omverdenen, så udefrakommende kan ikke se at en transaktion er i gang, inden den er afsluttet

Unselect

Når transaktionen er gennemført er den gemt og kan ikke længere rulles tilbage

Unselect

2.

Hvornår vil værdierne blive indsat i tabellen for følgende transaktion?

CREATE TABLE ValueTable (id int); 
BEGIN TRANSACTION; 
   INSERT INTO ValueTable VALUES(1); 
   INSERT INTO ValueTable VALUES(2); 
ROLLBACK;
3. Hvad er den rette syntax for at starte på en transaction?
4. Hvilken kommando er den sidste der bør kaldes for at en transaktion bliver udført?


 

Trin 5 – Triggers og stored procedures

I dette trin undersøger vi din viden om og færdigheder indenfor triggers og stored procedures

Stored procedures

1. Hvad er stored procedures?
2. Overvej følgende Transact-SQL statement fragment fra en stored procedure. Hvad sker der, hvis en fejl opstår under INSERT statement?
INSERT INTO Temp (Col1)
VALUES @TempVal
PRINT @TempVal
IF @@error <> 0

RETURN 1
ELSE

RETURN 0
…MORE CODE BELOW…
3. Hvilket udsagn omkring Stored Procedures, er ikke korrekt?
4. Forskelle mellem Stored Procedures og Funktioner.

Vælg de sande udsagn.
5.
CREATE PROCEDURE GetAddress
AS
SELECT * FROM Person.Address
Hvordan vil man kalde denne stored procedure?


 

Triggers

1. Skriv det korrekte keyword til at slette en trigger:  TRIGGER [IF EXISTS] [schema_name.]trigger_name

2. En trigger kan oprettes til følgende begivenheder / forespørgsler:
3. Hvad er det korrekte keyword for at slette en trigger?
4. Hvordan invoker / kalder vi følgende trigger?
CREATE TRIGGER before_employee_update

BEFORE UPDATE ON employees
FOR EACH ROW

BEGIN

INSERT INTO employees_audit
SET action = 'update',
employeeNumber = OLD.employeeNumber,
lastname = OLD.lastname,
changedate = NOW();
5. Trigger tid / timing definerer triggers handlingstid (action time).
Navngiv en af de to udløsertider (trigger times)

6. En SQL-trigger udføres, når en begivenhed (event) opstår i forbindelse med en tabel?
7. En trigger kaldes eksplicit?
8. En trigger kaldes automatisk?

 

Trin 6 – Kompetenceafdækning

Her spørger vi til dine kompetencer

1. Redegør for dine kompetencer (RKV Diplom i Webudvikling - Database)


 

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *