SQL Programmering

De filmklip der er lavet i starten af kurset, er super gode til at komme i gang med.

Der er meget hurtig respons, når man indsender en opgave.

Man kan selv tilpasset tidspunktet for kurset, når det passer ind i den normale hverdag

Johan Hauge, EM Retail Solutions A/S

SQL Programmering

Der har været en rigtig god rødtråd mellem teori og øvelserne hele vejen igennem kursuset. Der har samtidigt været udfordrende, men uden at jeg har siddet og slået mig selv på hovedet. Thor har samtidig været online godt og vel 24/7 til at besvare på spørgsmål og hjælpe mig igennem, hvor jeg har haft det svært.

Alexander Thompson, privat

DreamWeaver MX

Hej Thor

Det bedste har været at jeg så hurtigt fik svar, der var aldrig en fornemmelse af at afstanden til hjælp var lang, det føltes som om vi bare genoptog en snak fra sidst...

Og så var der aldrig en følelse af at blive talt ned til, selv om jeg da godt er klar over at du adskillige gange må have revet dig i håret over mine spørgsmål.

Det har også været godt, at der ikke har været en tidsfrist. Jeg kan se at flere af mine kolleger har været igang med et kursus, som de måtte skippe, fordi de ikke var i stand til at overholde tidsfristen.

Vivi Bundgaard, Egvad Bibliotek

Access VBA

Min indgangsvinkel til VBA var, at jeg overhovedet ikke har arbejdet "hands on" med kode, siden de første par år af ingeniørstudiet, hvorfor min overordnede målsætning var "blot at komme komme i gang" dvs få en overordnet forståelse for hvordan strukturen i det hele var. Det har jeg fået og mere til.

Der er lagt vægt på øvelse, så man selv skal "bøvle" med koden, uden at få alt for meget forærende. Det er godt. Øvelserne har jeg oplevet, som værende bygget op, så man får en "værktøjskasse" med komponenter, som i et vist omfang kan genindgå i nogle af de efterfølgende øvelser. Også det er fint. Det stimulerer en til at tænke kreativt.

Alt i alt er mine forventninger indfriet.   ..

Lars Aaboe Kristensen, Ribe Amt, Teknik og Miljø

ASP.NET 3.5

Det har været rigtig godt med det fast forløb - opgave efter opgave

Der fungerer også godt at man selv kan disponerer over tiden så det kan passe ind i hverdagens

arbejde og derved brug meget tid på det man selv synes er svært.

Det virker rigtig godt med den direkte vejledning/problemløsning man får på mail når man er "kørt fast" i en øvelse

Mine svartider har været gode.

Erik Skou, Hedensted Tømmerhandel

Excel grundlæggende 2007

Det passer mig perfekt at løse opgaverne i mit eget tempo og at jeg kan bruge den tid der skal til..

Mette Kargaard. Frederiksen, Privat

Excel grundlæggende 2007

Har været fuldt ud tilfreds med kursusforløbet, det har ikke taget nær så lang tid som frygtede, men jeg har også haft en del huller i min hverdag som jeg kunne bruge til kurset.

Skal helt klart videre med det videregående kursus og håber der er lidt mere hjernegynmastik.

Hurtig hjælp via chatten og hurtige svar efter øvelserne.

Kan godt anbefales til andre. 

Helle Majdal, Mejdal Service og Teknik

< >
Se flere referencer

Funktioner til konvertering og formatering

Igen først en lille oversigt

FunktionBeskrivelse
CAST(felt AS datatype) Konverterer feltet til datatypen
CONVERT(datatype, felt, (evt. datoformat)) Konverterer feltet til datatypen,
men her med mulighed for at angive datoformatet
FORMAT(felt, format) Viser feltet i som angivet i formatet

Og vi har nok også brug for en oversigt over datatyper

 DatatypeBeskrivelse 
char(n)  Fast bredde tekst. Max 8.000 tegn 
varchar(n)  Variabel tekst. Max 8.000 tegn 
varchar(max)  Variabel tekst. Max. 1.073.741.824 tegn
text Variabel tekst. Max 2Gb tekst
nchar(n)  Fast bredde unicode tekst. Max 4.000 tegn 
nvarchar(v)  Variabel unicode tekst. Max 4.000 tegn
nvarchar(max)  Variabel unicode tekst. Max 536.870.912 tegn
ntext  Variabel unicode tekst. Max 2Gb tekst 
bit 0, 1 eller NULL 
binary(n)  Fast bredde binær streng. Max 8.000 bytes 
varbinary(n)  Variabel binær streng. Max 8.000 bytes 
varbinary(max)  Variabel binær streng. Max 2Gb data 
image  Variabel binær streng. Max 2Gb data  
tinyint  Heltal mellem 0 og 255 
smallint  Heltal mellem -32.768 og 32.767
int  Heltal mellem -2.147.483.648 og 2.147.483.647 
bigint  Heltal mellem -9.223.372.036.854.775.808 and 9.223.372.036.854.775.807 
decimal(p,s)  Tillader tal mellem -10^38 +1 to 10^38 –1.
p er antallet af ciffre i tallet - skal være mellem 1 og 38 (default er 18)
s er antallet af ciffre i tallet til højre for decialkommaet - skal være mellem 0 og p (default er 0)
numeric(p,s)  Som decimal(p,s) 
smallmoney  Beløb mellem -214.748,3648 og 214.748,3647 
money  Beløb mellem -922.337.203.685.477,5808 to 922.337.203.685.477,5807 
float(n)  Tal mellem -1,79E + 308 og 1,79E + 308. 
Brug float(24) for store tal og float(53) for meget store tal.
real  Tal mellem -3,40E + 38 og 3,40E + 38
datetime  Fra 1. januar 1753 til 31. december 9999 med en nøjagtighed på 3,33 millisekunder 
datetime2  Fra 1. januar 0001 til 31. december 9999 med en nøjagtighed på 100 nanosekunder 
smalldatetime  Fra 1. januar 1900 til 5. juni 2079 med en nøjagtighed på 1 minut 
date  Kun dato. Fra 1. januar 0001 til 31. december 9999 
time  Kun tid med nøjagtighed på 100 nanosekunder 
datetimeoffset  Som datetime2, men med tilføjelse af tidszone
timestamp  Gemmer et unikt nummer, der bliver opdateret hver gang en række bliver oprettet eller ændret.
Hver tabel kan kun have ét timestamp felt
sql_variant  Gemmer op til 8.000 bytes data af forskellig datatype - dog ikke text, ntext eller timestamp 
uniqueidentifier  Gemmer en unik identifier (GUID) 
xml  Bruges til XML formateret data. Max 2Gb 
cursor  Bruges til at gemme en markør, der bruges i database operationer 
table  Bruges til at gemme et resultatsæt til senere behandling 

Lidt eksempler

CAST og CONVERT minder rigtig meget om hinanden - vi kigger primært på CONVERT og tager et par eksempler

SELECT 
'Født: ' + CONVERT(varchar, [BirthDate]) as Fdag
FROM Employee

Prøv det og se, hvordan tekst og dato på magisk vis bliver lagt sammen.

Man kan så også skrive 

SELECT 
'Født: ' + CONVERT(varchar, [BirthDate], 105) as Fdag
FROM Employee

Prøv igen og se, at datoen nu bliver formateret, som vi gerne vil have det (tror jeg).

Det hemmelige nummer 105 har jeg fundet på siden her: http://msdn.microsoft.com/en-us/library/ms187928.aspx hvor du kan se andre interessante hemmelige numre.

FORMAT bruges til tal og datoer og det kan se sådan her ud:

SELECT 
FORMAT([BirthDate], 'dd-MM-yyyy') as Fdag,
FORMAT([VacationHours], '0.00 timer') as FerieTimer
FROM Employee

Se, hvad det giver. Nok ikke den store overraskelse...

Man kan også gøre sådan her

SELECT 
FORMAT([BirthDate], 'd', 'da-DK') as Fdag,
FORMAT([VacationHours], 'c', 'da-DK') as FerieTimer
FROM Employee

Prøv det...
Ja, det var ikke helt som forventet - 'd' står, som du nok har gættet for date og 'c' for currency - så ja, det giver ikke meget mening i denne sammenhæng...

Læs lidt mere om format her

http://technet.microsoft.com/en-us/library/hh213505.aspx

 

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.