Difference between revisions of "6238 Databaser Agenda/SQLCreateInsertSelect"

From Teknologisk videncenter
Jump to: navigation, search
(Saelger database)
(Update)
 
(10 intermediate revisions by the same user not shown)
Line 4: Line 4:
  
 
==SQL vs T-SQL==
 
==SQL vs T-SQL==
SQL er et declarativt sprog. Det betyder at vi beskriver hvad vi vil have, men ikke hvordan det skal ske
+
SQL er et declarativt sprog. Det betyder at vi beskriver hvad vi vil have, men ikke hvordan det skal ske.
C#, Java etc. Er procedurale sprog hvor vi beskriver step for step hvad der skal ske
+
 
T-SQL er SQL med procedurale add ons (Stored procedures)
+
C#, Java etc. Er procedurale sprog hvor vi beskriver step for step hvad der skal ske.
 +
 
 +
T-SQL er SQL med procedurale add ons (Stored procedures).
 +
 
 
==Saelger database==
 
==Saelger database==
 
[[File:6238 Databaser Agenda SQLCreateInsertSelect2.png|100px]]
 
[[File:6238 Databaser Agenda SQLCreateInsertSelect2.png|100px]]
Line 18: Line 21:
  
 
==Create==
 
==Create==
 +
Herunder oprettes tabellerne Saelger og TelefonNr.
 +
Bemærk hvordan TelfonNr får tildelt en FOREIGN KEY til Saelger.
 +
 
<source lang=sql>
 
<source lang=sql>
 
CREATE TABLE Saelger
 
CREATE TABLE Saelger
Line 36: Line 42:
 
);
 
);
 
</source>
 
</source>
 +
 +
==Data types==
 +
CHARACTER(n) Character string. Fixed-length n
 +
 +
NVARCHAR(n) Character string. Variable length. Maximum length n
 +
 +
BOOLEAN         Stores TRUE or FALSE values
 +
 +
INTEGER         Integer numerical (no decimal). Precision 10
 +
 +
FLOAT         Approximate numerical, mantissa precision 16
 +
 +
DATETIME Stores year, month, day,hour, minute, and second values
  
 
==Insert==
 
==Insert==
 +
<source lang=sql>
 
INSERT INTO Saelger(Navn,StartDato,Email,MedarbNr)  
 
INSERT INTO Saelger(Navn,StartDato,Email,MedarbNr)  
 
VALUES ('Anders','20010501','anders@mail.dk',1);  
 
VALUES ('Anders','20010501','anders@mail.dk',1);  
 +
</source>
 
==Update==
 
==Update==
UPDATE Saelger SET Navn=‘Anders’ WHERE MedarbejderNr=1;
+
<source lang=sql>
 +
UPDATE Saelger SET Navn='Anders' WHERE MedarbejderNr=1;
 +
</source>
 +
 
 
==Delete==
 
==Delete==
 +
<source lang=sql>
 
DELETE FROM Saelger WHERE MedarbejderNr=1;
 
DELETE FROM Saelger WHERE MedarbejderNr=1;
 +
</source>
 
==Select==
 
==Select==
 +
<source lang=sql>
 
/* Vælg alt fra tebellen Saelger */
 
/* Vælg alt fra tebellen Saelger */
 
SELECT * FROM Saelger;
 
SELECT * FROM Saelger;
Line 53: Line 80:
 
/* Vælg MedarbNr fra Saelger hvor navnet er Anders */
 
/* Vælg MedarbNr fra Saelger hvor navnet er Anders */
 
SELECT MedarbNr FROM Saelger WHERE Navn = 'Anders';
 
SELECT MedarbNr FROM Saelger WHERE Navn = 'Anders';
 
+
</source>
==Opgave==
 
Lav først et ER-diagram der passer til tabellerne
 
Lav derefter Create og insert sætninger til alle tabeller
 
Forsøg at ændre nogle af dine data
 
Afprøv også delete
 
Afprøv til sidst dine tabeller med nogle select sætninger
 

Latest revision as of 15:18, 30 October 2015

6238 Databaser Agenda SQLCreateInsertSelect

SQL

6238 Databaser Agenda SQLCreateInsertSelect1.gif

SQL vs T-SQL

SQL er et declarativt sprog. Det betyder at vi beskriver hvad vi vil have, men ikke hvordan det skal ske.

C#, Java etc. Er procedurale sprog hvor vi beskriver step for step hvad der skal ske.

T-SQL er SQL med procedurale add ons (Stored procedures).

Saelger database

6238 Databaser Agenda SQLCreateInsertSelect2.png

6238 Databaser Agenda SQLCreateInsertSelect5.png 6238 Databaser Agenda SQLCreateInsertSelect7.png

6238 Databaser Agenda SQLCreateInsertSelect4.png 6238 Databaser Agenda SQLCreateInsertSelect3.png 6238 Databaser Agenda SQLCreateInsertSelect6.png

Create

Herunder oprettes tabellerne Saelger og TelefonNr. Bemærk hvordan TelfonNr får tildelt en FOREIGN KEY til Saelger.

CREATE TABLE Saelger
(
	Navn 	NVARCHAR(20)	NOT NULL,
	StartDato	DATETIME	NOT NULL,
	Email	NVARCHAR(20)	NOT NULL,
	MedarbNr	INT	NOT NULL,
	PRIMARY KEY(MedarbNr)
);

CREATE TABLE TelefonNr
(
	Nr 	NVARCHAR(8) 	NOT NULL,
	Saelger	INT 	NOT NULL,
	PRIMARY KEY(Nr),
	FOREIGN KEY(Saelger) REFERENCES Saelger(MedarbNr)
);

Data types

CHARACTER(n) Character string. Fixed-length n

NVARCHAR(n) Character string. Variable length. Maximum length n

BOOLEAN Stores TRUE or FALSE values

INTEGER Integer numerical (no decimal). Precision 10

FLOAT Approximate numerical, mantissa precision 16

DATETIME Stores year, month, day,hour, minute, and second values

Insert

INSERT INTO Saelger(Navn,StartDato,Email,MedarbNr) 
	VALUES ('Anders','20010501','anders@mail.dk',1);

Update

UPDATE Saelger SET Navn='Anders' WHERE MedarbejderNr=1;

Delete

DELETE FROM Saelger WHERE MedarbejderNr=1;

Select

/* Vælg alt fra tebellen Saelger */
SELECT * FROM Saelger;

/* Vælt alt fra tabellen Saelger hvor navnet er Anders */
SELECT * FROM Saelger WHERE Navn = 'Anders';

/* Vælg MedarbNr fra Saelger hvor navnet er Anders */
SELECT MedarbNr FROM Saelger WHERE Navn = 'Anders';