Database Flashcards
learn databases
syntax voor een like opzoeking
where kol like ‘%wat we zoeken%’
of een underscore als het 1 teken is dat je wil wild maken.
syntax between
where kol between x and y
syntax not
where not (x = ‘bla’ and y=’Blu’)
date format syntax
set dateformat dmy;
select…
een som?
SUM(kol)
een gemiddelde
AVG(kol)
een telling van gegevens
count(kol)
de telling van volledige rijen
count*
het kleinste getal van een kolom
MIN(kol)
het grootste getal van een kolom
MAX(kol)
de datum van vandaag opvragen
getdate()
bereken het verschil van 2 datums
DATEDIFF(DD, begindatum, einddatum)
bereken het verschil tss 2 datums in jaren, schrikkeljaar indachtig.
datediff(DD, begindatum, einddatum)/365.25
haal het jaar uit een datum
year(kol met datum)
Haal de maand uit een datum
Month(kol met datum)
Haal de dag uit een datum
Day(kol met datum)
haal een aantal karakters aan het begin van een gegeven uit dat gegeven
left(kol, #kar)
Haal een aantal karakters aan het eind van een gegeven, uit dat gegeven?
right(kole, #kar)
maak een integer van een gegeven.
cast (kol)
rond een getal af naar beneden
floor(bewerking)
pas de dateformat aan, bovenaan de query
Set dateformat dmy
wat is een alternatief voor de of-logische selector
kol in (‘x’, ‘y’)
Hoe onderzoek je of iets geen waarde heeft gekregen?
where kol IS NULL
Hoe ga je van verschillende lijnen in je oplossing 1 lijn maken
select distinct kol
Hoe maak je een alias aan voor je kolom?
AS Alias
hoe combineer je 2alles van 2 tabellen
UNION (All)
Hoe maak je een selectie uit 2 tabellen, adhv een voorwaarde?
Tabel INNER JOIN Tabel2 on(kolT1 = kolT2)
Hoe kan je ui 2 tabellen kolommen selecteren, waarbij je van 1 van de 2 tabellen toch alles bekomt?
Tabel1 left join Tabel2 on (kolT1 = kolT2)
Geef de 4 vormen waarin je een subquerry kan aanvragen
(NOT) IN
VGL
(NOT) EXISIT
= voor 1 rij te vergelijken
Hoe creeer je een tabel via een query
CREATE TABLE TblName (
kolID int IDENTITY (1,1) NOT NULL
Kol1 type NULL of NOT NULL
CONSTRAINT PK_TblName Primary key clustered (kolID)
)
hoe beschrijf je een PK
CONSTRAINT PK_TblName Primary key clustered (kolID)
)
Hoe beschrijf je een FK
Alter table add constraint FK_TabelPK_TabelFK foreign key (FK) references (PK)
hoe maak ik een user aan in de database
CREATE USER naamser
Hoe maak ik rollen aan
CREATE ROLE naamrole
hoe wijs ik een rol toe aan een user
sp_addroletomember Role, naamuser
go
nadien moet je zijn machtigingen nog aangeven via RK op de user of via
GRANT SELECT, INSERT, DELETE, UPDATE on table to role
Hoe zorg ik dat bepaalde rollen bepaalde machtigingen hebben?
Na de toewijzing van de role moet je zijn machtigingen nog aangeven via RK op de role of via
GRANT SELECT, INSERT, DELETE, UPDATE on table to role
Welke 4 rechten kan je toekennen?
INSERT UPDATE SELECT DELETE
Hoe kan ik de machtigingen in MS toekennen
RK, props, securables. Kies tabellen. klik ok. Nadien grant je in de permissions
Wat is een systeemview
zijn standaard views
Hoe maak je een systeemview aan?
ga naar Views
System views
add view
klik de tabellen weg
sleep de systemview die je wil zien bovenaan in MS
kies uw kolommen
RK excecute
permissies zijn zichtbaar onderaan.
save Vw_Viewnaam
HOe maak ik een overview van de tabel aan?
ga naar Views
New View
kies geen tabels
sleep INFORMATION SCHEMA COLUMNS in het bovenste leeg blad
kies tablenaam, columnname, datatpe
excecute SQL
save Vw_OverzichtDatabank
Hoe maak ik een gewone view aan?
ga naar views
New View
selecteer de tabellen die wil gebruiken
selecteer de kolommen die we willen gebruiken
excecute SQL
save Vw_Viewnaam
hoe groepeer ik in een view
in de middelste console, RK kies group by
kies agg functie die je wil gebruiken in de tabel die je wil gebruiken
voeg een alias toe
hoe sorteer ik in een view
middelste console, sort type, sort order
Bij view een Right of left join doen, hoe?
op de link tss de tabelcellen RK kies alle data van de tabel die je wil zien.
Hoe filter ik in de View
in de middelste console voeg filter toe
geef 0 in
een functie toevoegen in uw view
in de middenconsole in column zet je uw formule
bv: year(datumkol)
hoe verkort ik een veld?
Alter Table TblPersoneel
alter column TelNr varchar(15) null
Hoe vraag ik de lengte op van een bepaald veld
select col_length (‘TblNaam’, ‘Kol’) as alias
Hoe spreek ik mijn database aan in een query
use Databasenaam
Hoe voeg ik een kolom toe
Alter table Tabel
add geslacht char(1) null
constraint CkKol check (Kol in (‘M’, ‘V’))
Hoe pas ik iets aan naar enkel hoofdletters
in MS, Tabel, kol. Kies onderaan collation, kies case sensitive
Hoe kan je een nieuwe kolom saven als je er een aanpassing op hebt gemaakt
ga naar tools - options - Designers
vink prevent saving changes that require table re-creation uit.
Hoe pas ik een default datum aan
Alter Table tabel
add constraint naamconstraint default getdate() for kol
Je kan dit in MS in default Value or Binding dan zien staan
Hoe geef ik een andere default waarde aan via MS
in design tabel –>default Value or Binding Geef de default waarde in.
Hoe maak ik een berekend veld?
Alter Table tabel
add nieuwekol as functie
In MS kan je in Computed Column Specification de formule zien.
Hoe maak ik een berekend veld via MS
in tabeldesign geef in Computed Column Specification de formule in
hoe geef je bij een bool een default in (welke waarde)
0 false, 1 true
Hoe splits ik tabellen
select PKKol, kol2 , kol3, …
into TblNieuw
from TblOorspronkelijke
where kol in
(subquery)
hoe drop ik bepaalde kolommen uit een tabel
Alter Table tabel
drop column kol1, kol2, kol2 , …
welke store procedure gebruik je om een veld te hernoemen
exec sp_rename ‘Tbl.kol’, ‘nieuwenaam’
Hoe verwijderen en updaten gegevens? vb. prijs bier is 10% verhoogd
Update TblNaam
set kol = kol *1.1
Where Soort = ‘BIE’
oude prijzen blijven op de oude prijs in dit geval, omdat je de basis prijs hebt genomen. (de defaultprijs)
hoe kan ik er voor zorgen dat de historiek bij een update van de gegevens niet aangeraakt wordt.
Je zoekt uit wat de default prijs is, in welke tabel deze zit en past die aan.
Wat is een stored procedure?
Een vaste procedure die na een excecute uitgevoerd wordt.
Wat is Convert?
Het omzetten van data. Bijvoorbeeld een datum met 2 verschillende tijdstippen kan je dan terugbrengen naar de datum alleen.
syntax convert
convert (date, Tijdstip) = convert (date, getdate())
syntax creatie stored procedure zonder parameters
CREATE PROCEDURE SP_Naam
AS
BEGIN
CODE (select, from, where,…)
END
GO
Hoe pas ik een stored procedure aan?
ALter PROCEDURE
Hoe voeg ik een parameter toe aan mijn stored procedure
tussen het create alter lijntje en de AS zet ik een @Parameter.
Hoe kan ik mijn parameter gebruiken in mijn stored procedure?
@parameter te gebuiken.
Hoe geef ik mijn parameter een waarde?
excecute de stored procedure, geef in de pop up de waarde in achteraan.
Is een stored procedure gelinkt aan 1 tabel?
nee, gelinkt aan de DB
Wat is een trigger
scripts die auto uitgevoerd worden na een insert, update en delete actie. Een trigger is gelinkt aan een tabel. Bv calculated field, logtabel?
syntax trigger
create/Alter Trigger Tr_naam
On Tabel
after insert, update, delete (kies)
AS
update, delete, insert (kies) tabel
CODE (select, from, where,…)
BEGIN
Wat genereert een update trigger
2 virtuele tabelletjes met enerzijds de deleted en anderszijds de inserted lijn
Wat genereert een insert trigger
een inserted virtueel tabelletje.
Wat genereert een delete trigger?
een virtueel deleted tabelletje
HOe ga je een if functie starten bij een trigger?
begin
if update (kolom)