SQL Les 12 25 May 2019.

Slides:



Advertisements
Verwante presentaties
Inleiding in de statistiek voor de gedragswetenschappen Met ondersteuning van SPSS Guido Valkeneers.
Advertisements

Versiebeheer Repository Invantive Producer Afstudeerstage Wouter Vos 1.
Computervaardigheden
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
PHP & MYSQL LES 03 PHP & DATABASES. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
1 SQL Model Clausule 28 november 2006 Rob van Wijk.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Het selecteren van data uit meerdere gekoppelde tabellen
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
Inleiding Databanken: oefeningen 4 Sven Casteleyn 4 Lokaal: 6G HomePage: te bereiken via
Hoofdstuk 6: Controle structuren
Computervaardigheden en Programmatie Universiteit AntwerpenDatabank - Basis 4.1 Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen.
Relationele databases: Fysiek databaseontwerp en SQL
Download en installeer de gereedschappen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Vorige week: Referentiele integriteit
SQL (structured Query Language) DDL (Data Definition Language) DML (Data Manipulation Language) Ontwerp databaseBevraag database.
Workshop PHP Een productencatalogus Met database.
Object georiënteerd programmeren in Alice
Cursus performance tuning voor ontwikkelaars 26 januari 2006 “De beste manier om een query te verbeteren, is door hem niet uit te voeren.”
PHP & MYSQL LES 04 CMS: BEST PRACTICE. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Usability metrics Gebruiksvriendelijkheid ISO Effectiveness Efficiency Satisfaction Learnability Flexibility En nu? Inleiding Hoe gaan we de gebruiksvriendelijkheid.
Laat software voor je werken
SQL ( SERVER ) Les #02: T-SQL. A GENDA Herhaling les 4 Views SELECT…INTO Beheren van tabellen: CREATE ALTER DROP Opdracht voor de volgende les.
LauwersCollege Buitenpost Informatica
Inleiding in de statistiek voor de gedragswetenschappen
Computervaardigheden Hoofdstuk 4 — Databank (Basis)
Join Indices … as a tool for Spatial Datamining. Inhoud Inleiding Spatial Relations (Spatial) Join Index Implementatie Conclusie.
Front-end development
1 July SQL Les July Agenda Herhaling Herhaling Stored Procedures Stored Procedures Oefeningen Oefeningen User Defined Functions User.
2 August SQL Les August Agenda Herhaling Herhaling Cursors Cursors MS SQL Server and MS Excel MS SQL Server and MS Excel Oefeningen.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Les 0 Structured Query Language SQL. Programma Les 0 – Introductieopdracht Les 1 Les 2 Les 3 Schriftelijke toets.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Analyse 3 INFANL01-3 week 3 CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Week 3 BIMAIV03 Les B3 BIMAIV03 Les B3. Opdracht 1 Van een artikel mogen maximaal 300 stuks verkocht worden. Verschillende klanten bestellen een aantal.
Minor Project- en Programmamanagement
ANALYSE 3 INFANL01-3 WEEK 8 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Herhaling ▸ Normaliseerregels ▸ Omzetten ERD ▸ Group by en SET ▸ Proeftentamen.
Week 6 BIMAIV03 les B1. DML en DDL ata D anipulation M anguage L ata D efinition D anguage L.
ANALYSE 3 INFANL01-3 WEEK 6 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Subqueries met correlaties ▸ Subqueries zonder correlaties ▸ Views ▸
1 KPN Mobiel – Introductie Repository Object Browser & Designer 10 Designer 10g & Repository Object Browser Maandag 28 februari 2005 Lucas Jellema (AMIS)
Wat is SQL (1)? SQL (Structured Query Language):  is een zeer krachtige taal met een beperkt vocabulaire (aantal ‘woorden’)  is declaratief (‘WAT’ niet.
SQL Performance Analyzer Inschatten performance impact van wijzigingen Bram van der Vos
LPI 1.05 Marcel Nijenhof. Agenda ● Customize and use the shell environment ● Customize or write simple scripts ● SQL data management.
PPGM Voor databeheerders Johan Van Rensbergen 09/08/2016.
– Software development fundamentals
SQL Cursus deel
Key Process Indicator Sonja de Bruin
Programmeren met Reeksen
LauwersCollege Buitenpost Informatica
Moving objects in a geo-DBMS
Moving objects in a geo-DBMS
Software Development fundamentals
Software Development fundamentals
G-CLOUD SHAREPOINT USER GROUP
SQL Les February 2019.
SQL Les February 2019.
SQL Les 3 17 February 2019.
SQL Les 3 23 February 2019.
SQL Les 7 24 February 2019.
Database connect formulieren 1 februari 2016.
SQL Les 1 5 April 2019.
SQL Les 6 14 April 2019.
SQL Les 9 12 May 2019.
SQL Les 4 12 May 2019.
– Software development fundamentals
Transcript van de presentatie:

SQL Les 12 25 May 2019

Agenda Herhaling Triggers Oefeningen Cursors 25 May 2019

Herhaling DML SELECT - statement SINGLE ROW FUNCTIONS JOIN OUTER JOIN INNER JOIN SELF JOIN GROUP FUNCTIONS SUBQUERIES 25 May 2019

Herhaling DML TRANSACTIONS INSERT UPDATE DELETE BEGIN TRAN COMMIT ROLLBACK 25 May 2019

Herhaling DDL TABLE VIEW PROCEDURELE EXTENSIONS STORED PROCEDURES USER DEFINED FUNCTIONS SCALAR VALUED FUNCTIONS TRIGGERS 25 May 2019

Trigger Een opzichzelf bestaande routine afhankelijk van een bepaalde tabel of view Trigger zorgt voor het uitvoeren van een actie indien er een event gebeurt op een tabel of view Event kan een DML of DDL statement zijn 25 May 2019

DML Trigger Table_name | view_name: FOR | AFTER | INSTEAD OF: Object waarop de trigger gebouwd wordt FOR | AFTER | INSTEAD OF: Wanneer moet de actie uitgevoerd worden? INSERT | UPDATE | DELETE Na welk event moet de actie gebeuren? 25 May 2019

Voorbeeld trigger Veronderstel: We hebben een tabel emp We hebben een tabel emp_audit, waarin we de operaties op emp willen bijhouden

Voorbeeld trigger (2)

Inserted and Deleted tables Twee tabellen onderhouden door het systeem Inserted: Bevat copies van de inserted rijen in de triggered tabel Deleted: Bevat copies van de deleted rijen in de triggered tabel Een UPDATE statement wordt behandeld als een DELETE gevolgd door een INSERT 25 May 2019

Toepassingen van DML triggers Audit van tabellen Implementeren van business rules Referentiële integriteit forceren Meer flexibiliteit dan de referentiële integriteit op tabel level 25 May 2019

Sequence van triggers sp_settriggerorder sp_helptrigger System stored procedure Zetten van de order van de triggers op een tabel Eerst of laatste trigger aanduiden voor een statement type (INSERT, UPDATE, DELETE, …) sp_helptrigger Tonen van eigenschappen van een trigger Niet van toepassing voor INSTEAD OF triggers 25 May 2019

DDL Triggers ALL SERVER | DATABASE: EVENT_TYPE Scope van de trigger (op een database of op de gehele server) EVENT_TYPE http://msdn.microsoft.com/en-us/library/bb522542.aspx 25 May 2019

DDL Triggers EVENT_GROUP Verschillen met DML triggers http://msdn.microsoft.com/en-us/library/bb510452.aspx Verschillen met DML triggers Geen INSERTED en DELETED tabellen Geen INSTEAD OF Scope op een database of Server en niet op een tabel of view 25 May 2019

Example DDL Trigger USE sample; GO CREATE TRIGGER prevent_drop_triggers ON DATABASE FOR DROP_TRIGGER AS PRINT 'You must disable "prevent_drop_triggers" to drop any trigger' ROLLBACK 25 May 2019

Oefening Make een trigger die in een AUDIT tabel wegschrijft wanneer een CREATE TABLE statement uitgevoerd is op de MyFirstDB database. Pas de trigger aan zodat de AUDIT tabel wordt opgevuld voor alle TABLE statements EXTRA: Vul in de AUDIT tabel ook de naam van de tabel die is aangepast alsook het event dat gebeurd is 25 May 2019

Cursor Syntax 25 mei 2019

Cursor (2) Simple example 25 mei 2019

Cursor (3) 25 mei 2019

Cursor (4) - steps 25 mei 2019

Cursors (5) Voordelen Gemakkelijk bij row-by-row procedures Scrolling door de data Quick&Dirty 25 mei 2019

Cursor (6) Nadelen Performance Vergt veel CPU kracht Vaak gebruikt voor Quick&Dirty programming Subtiele errors @@Fetch_status werkt niet Te veel rijen in de cursor 25 mei 2019

Oefeningen op Cursor Schrijf een cursor die in een extra column het verschil tussen de value van stat berekent van de huidige rij en vorige rij. In de eerste rij moet geen resultaat getoond worden. 25 mei 2019

Oefeningen op cursor Creëer een stored procedure die van alle tabellen in de MyFirstDB database de huidige grote van de tabel uitprint / wegschrijft naar het output scherm 25 mei 2019

Oefeningen op Triggers p. 385 Beginners Guide to SQL Server 2008 25 May 2019

Oefeningen Herhalingsoefeningen 25 mei 2019