Alle vet det, men ikke alle gjør det! Skalerbarhet ved BIND i IN-lister

Størrelse: px
Begynne med side:

Download "Alle vet det, men ikke alle gjør det! Skalerbarhet ved BIND i IN-lister"

Transkript

1

2 OUGN, Bergen Lasse Jenssen Alle vet det, men ikke alle gjør det! Skalerbarhet ved BIND i IN-lister

3 Trønder, men. Lasse Jenssen Oracle Informix MS SQL Server MySQL DBA Drift Applied Technologies AS Instruktør Oracle DBA kurs: 9i og 10g Konsulent Anvendte Systemer AS Oracle University SQL PL/SQL UTVIKLING PHP Java Perl

4 Hvordan vinner man en Olympisk medalje? Det hjelper ikke hvor god jobb smørerne har gjort, hvis ikke utøveren selv er i stand til å YTE! Men HUSK! Selv Phillip Boit kan vinne medaljer, bare ikke en olympisk medalje. Bind er en suksessfaktor for å oppnå skalerbarhet

5 Alle vet det, men samtidighet Library cache Latch free waits V$SQL Latches SQL Literaler select * from emp where emp_no=7569 BIND variabler select * from emp where emp_no=:no Soft Parsing Hard

6 Et lite eksempel select empno from emp; accept my_id prompt EMP_ID (def=7788): default 7788 declare my_sql varchar2(1000); my_emp emp%rowtype; my_dept dept%rowtype; begin my_sql := 'select * from emp where empno=' &my_id; execute immediate my_sql into my_emp; execute immediate 'select * from dept where deptno=:x' into my_dept using my_emp.deptno; dbms_output.put_line('fant: ' my_emp.ename ' fra avdeling ' my_emp.deptno ': ' my_dept.dname); end; / Script: no_bind.sql, no_bind_cache.sql

7 Et lite eksempel SQL> select sql_text from v$sql 2 > where (sql_text like '% from emp %' 3 > or sql_text like '% from dept %') 4 > and sql_text not like '%v$sql%' 5 > and sql_text not like '%declare%'; SQL_TEXT select * from emp where empno=7900 select * from emp where empno=7499 select * from dept where deptno=:x select * from emp where empno=7566 select * from emp where empno=7788 Script: no_bind.sql, no_bind_cache.sql

8 Bind i SQL*Plus SQL> variable my_emp number SQL> exec :my_emp := 7900; SQL> select * from emp where empno=:my_emp; SQL> variable ret varchar2(100) SQL> exec select sysdate into :ret from dual; SQL> print :ret RET :01:13

9 Hvorfor virker ikke dette? SQL> variable ret varchar2(100) SQL> select sysdate into :ret from dual; SQL> print :ret RET

10 Bind i PL/SQL I declare l_empno number := 7900; l_ret date; begin execute immediate 'select hiredate from emp where empno=:x' into l_ret using l_empno; dbms_output.put_line('hiredate: ' to_char(l_ret,'dd.mm.yyyy HH24:MI:SS'); end; /

11 Bind i PL/SQL II declare l_empno number := 7900; l_ret date; begin select hiredate into l_ret from emp where empno=l_empno; dbms_output.put_line('hiredate: ' to_char(l_ret,'dd.mm.yyyy HH24:MI:SS'); end; /

12 Bind i Java String msql = select * from emp where deptno=? and ename like? ; PreparedStatement ps = conn.preparestatement(msql); ps.setint(1, in_dept); Ps.setString(2, search_name) ResultSet rs = ps.executequery(); System.out.println( EmpNo Ename Deptno ); System.out.println( ); while (rs.next()){ } rs.close(); ps.close(); Det over er mye enklere enn dette String msql = select * from emp where + + deptno= + in_dept + and ename like + search_name + ;

13 OBS! BIND and datatyper SQL> desc LOG Navn Null? Type LOG_ID NOT NULL NUMBER(18) FILE_ID NUMBER(6) INST_ID NOT NULL VARCHAR2(11) CUST_ID VARCHAR2(20) ACC VARCHAR2(35) SRC NOT NULL VARCHAR2(20) SYSTEM_NAME NOT NULL VARCHAR2(20) USER_ID VARCHAR2(25) FUNCTION_NAME NOT NULL VARCHAR2(35) DATETIME NOT NULL DATE DESCRIPTION VARCHAR2(50)

14 BIND and datatyper SELECT * FROM LOG WHERE inst_id LIKE :b1 AND datetime >= :b2 AND datetime <= :b3 AND cust_id LIKE :b4; Spørring kjørt Java program (jdbc versjon ) Indeks : LOG(inst_id, cust_id, datetime) Spørring brukte ca 120 sekunder, ca fysiske IO Henter ca 30 rader

15 BIND and datatyper - Trace BINDS # : Bind#0 oacdty=01 mxl=32(16) mxlc=00 mal=00 scl=00 pre=00 value= 5799" Bind#1 oacdty=180 mxl=11(11) mxlc=00 mal=00 scl=00 pre=00 value= Bind#2 oacdty=180 mxl=11(11) mxlc=00 mal=00 scl=00 pre=00 value= Bind#3 oacdty=01 mxl=128(44) mxlc=00 mal=00 scl=00 pre=00 value= "

16 BIND and datatyper Forslag til hva som kan være galt? Og ikke minst hvorfor?

17

18 , men ikke alle gjør det! IN-lister where col in (14,16,21,24,27,38,165,900,3765)

19 OBS: IN-list uten BIND SQL> select substr(sql_text,1,50) sqltext, count(*) nr_sqls 2 from v$sql 3 group by substr(sql_text,1,50) 4 having count(*)>40 5* order by 2 SQLTEXT NR_SQLS select 42 Select 48 SELECT 50 select 51 select 59 select 64 Select 64 Select 73 SELECT 78 select 79 SELECT count(*) FROM KNT WHERE ID=:b1 AND KONTO_NR 167 SELECT KNT.* FROM KNT WHERE ID=:b1 AND KONTO_NR IN 167

20 Hva foregår i shared_pool (library cache)? SQL> select sql_text from v$sql where substr(sql_text,1,50)= 'SELECT * FROM WHERE KONTO_NR IN ('; SQL_TEXT from V$SQL SELECT * FROM WHERE KONTO_NR IN ('XXXXXXX9169','XXXXXX9178','XXXXXXX3912') AND ((TYPE = 'NO') OR (SUBSTR(PTYPE,1,2)='OP')) SELECT * FROM WHERE KONTO_NR IN ('XXXXXXX1009','XXXXXX2363','XXXXXXX2293', 'XXXXXX1119','XXXXXXX7233') AND ((TYPE = 'NO') OR (SUBSTR(PTYPE,1,2)='OP')) SELECT * FROM WHERE KONTO_NR IN ('XXXXXXX3883','XXXXXX8711','XXXXXXX9134', 'XXXXXXX1009','XXXXXX4512','XXXXXXX4528', 'XXXXXX1989','XXXXXXX7812') AND ((TYPE = 'NO') OR (SUBSTR(PTYPE,1,2)='OP')) SELECT * FROM WHERE KONTO_NR IN ('XXXXXXX9002') AND ((TYPE = 'NO') OR (SUBSTR(PTYPE,1,2)='OP')) SELECT * FROM WHERE KONTO_NR IN ('XXXXXXX9122','XXXXXX6234','XXXXXXX5642') AND ((TYPE = 'NO') OR (SUBSTR(PTYPE,1,2)='OP')) rader valgt

21 Hva foregår i shared_pool (library cache)? Hva skjer når lasten (samtidigheten) øker? Top 5 Timed Events ~~~~~~~~~~~~~~~~~~ % Total Event Waits Time (s) Ela Time db file sequential read 1,310,593 6, latch free 57,513 4, CPU time 1, db file scattered read 50, buffer busy waits 133, Problem: Koden bruker BIND bare delvis Warning: Denne applikasjonen vil ALDRI skalere

22 IN-lister where col in (14,16,21,24,27,38,165,900,3765) Vi BØR bruke BIND! Men vanskelig når Hvorfor funker ikke dette? SQL> variable txt varchar2(250) antallet i IN-listen varierer, og/eller er relativt høyt SQL> exec :txt := ' ''SYS'', ''SYSTEM'' ' SQL> select * 2 from all_users 3 where username in (:txt); no rows selected Problem

23 IN-lister where col in (:B1, :B2, :B3, :B4, :B5, :B6, :B7, :B8, :B9, :B10) - Ok for små avgrensede lister - Benyttes av div. API-er som generer SQL code - løser IKKE vårt generelle IN-liste problem Fra Oracle 8i: Funksjoner som returnerer en collection Da kan vi lage en collection datatype: SQL> create or replace type str2tbltype 2 as table of varchar2(4000); Løsning 1 Type created. Og så en funksjon

24 E T P O T E N S I E L T P R O B L E M? IN-lister where col in (select * from TABLE( cast( str2tbl(:txt) as str2tbltype )) C B O O t i m i z e r Her er funksjonen vi bruker over: SQL> create or replace function str2tbl ( p_str in varchar2, 2 p_delim in varchar2 default ',' ) return str2tbltype 3 as 4 l_str long default p_str p_delim; 5 l_n number; 6 l_data str2tbltype := str2tbltype(); 7 begin 8 loop 9 l_n := instr( l_str, p_delim ); 10 exit when (nvl(l_n,0) = 0); 11 l_data.extend; 12 l_data(l_data.count) := 13 ltrim(rtrim(substr(l_str,1,l_n-1))); 14 l_str := substr( l_str, l_n+1 ); 15 end loop; 18 return l_data; 19 end; 20 / Function created. /*+ cardinality(t 50 ) */ Løsning 2 Men vi ønsker ikke/vil ikke lage ekstra objekter Fra 9i slipper du også dette!

25 IN-lister with data ( ) select where col in (select * from data) Løsning 3 Da får vi: SQL> exec :txt := 'SYS, SYSTEM SQL> with data as ( 2 select 3 trim( substr (txt, 4 instr (txt, ',', 1, level ) + 1, 5 instr (txt, ',', 1, level+1) 6 - instr (txt, ',', 1, level) -1 ) ) 7 as token 8 from (select ',' :txt ',' txt from dual) 9 connect by level <= 10 length(:txt)-length(replace(:txt,',',''))+1 11 ) 12 select * from all_users 13 where username in (select * from data); TOKEN SYS SYSTEM Men dette blir for komplekst og tungvindt å skrive parameterisert view

26 IN-lister select where col in (select * from IN_LIST) Da trenger vi: SQL> create or replace context my_ctx 2 using my_ctx_procedure; Context created. SQL> create or replace procedure my_ctx_procedure ( p_str in varchar2) as 3 begin 4 dbms_session.set_context( 'my_ctx', 'txt', p_str ); 5 end; 6 / Procedure created. Og view-et. Løsning 4 Da kjører vi: SQL> exec my_ctx_procedure(:txt) SQL> select * from all_users 2 where username in 3 (select * from IN_LIST); SQL> create or replace view IN_LIST as 2 select 3 trim( substr (txt, instr (txt, ',', 1, level ) + 1, 4 instr (txt, ',', 1, level+1) 5 - instr (txt, ',', 1, level) -1 ) ) as token 6 from (select ',' sys_context('my_ctx','txt') 7 ',' txt from dual) 8 connect by level <= 9 length(sys_context('my_ctx','txt')) 10 -length(replace(sys_context('my_ctx','txt'),',',''))+1 14 / View created.

27 IN-lister Hibernate select where col in (:b1,:b2,:b3,:b4,:b5,:b6,:b7,:b8,osv); Bruker BIND variabler MEN o Vær obs på at antall varianter med ulikt antall verdier i INliste(ne) styrer hvor mange versjoner av SQL som ligger i library cache o Hvis flere IN-lister i samme SQL, kan dette antallet fort bli stort Dermed o Vurder om dette kan bli et skalerbarhetsproblem når du skriver SQL-er med IN-lister

28 Fordeler m/bind Vi har allerede sett: Ytelse Skalerbarhet Enklere kode Minne forbruk (cache) I tillegg: Sikrere kode (unngå SQL injection)

29 SQL Injection SQL> accept myname prompt "Enter username: " Enter username: DosNotMatter SQL> accept mypass prompt "Enter password: " Enter password: i_dont_know' or 'x' = 'x SQL> select count(*) old new 2 from user_table 3 where username = '&myname' 4 and password = '&mypass' 5 / 3: where username = '&myname' 3: where username = 'DosNotMatter' old 4: and password = '&mypass' COUNT(*) new 4: and password = 'i_dont_know' or 'x' = 'x'

30 SQL Injection Sikkerhetshull på grunn av SQL Injection vil forekomme hvis vi ikke har fokus på dette Over 63 % (av alle spurte utviklere) har ikke sjekket koden for mulige SQL injection (eller vet ikke om sjekket) Mitt råd: SQL Injection handler ene og alene om bruk av BIND! Derfor. ALDRI bruk sammenslåing (concatination) av brukerinput inn i SQL Gjennomfør Code Review med minst 5 personer som ikke tåler trynet ditt

31 MEN Skal vi alltid bruke Bind? - Datavarehus? - Hva hvis vi alltid spør etter samme verdi? For eksempel alle transaksjoner med gitt status.

32 OG Hva med histogrammer? - Statistikk med histogrammer kan være nyttig når data er skjevt fordelt - MEN Bind og histogrammer er logiske motsetninger

33 Men BIND_PEEKING _optim_peek_user_binds = true - Løser ikke dette problemet med bind og histogrammer? - Bind_peeking: Feature eller bug?

34 Noen hendige PL/SQL verktøy: RUNSTATS & MYSTATS pakkene

35

36 RunStats (PL/SQL) pakke Utviklet av Tom Kyte (som også står bak asktom.oracle.com) Utvidet av Adrian Billington (www.oracle-developer.net) Small-time benchmarking tool Lar oss sammenligne metoder (kode) og vise hvem som er best og dette er nødvendigvis IKKE det samme som at metoden er raskest også relatert til ressurs bruk - System statistikk - Latching aktivitet

37 RunStats (PL/SQL) installasjon Opprette UTIL bruker SQL> create user util identified by 'aha&26fdfj'; SQL> grant create session to util; SQL> grant create public synonym to util; SQL> grant create procedure to util; SQL> grant select any dictionary to util; -- Eller V$STATNAME, V$MYSTAT, V$LATCH Opprette RUNSTATS pakke SQL> conn util SQL> create or replace public synonym runstats for runstats_pkg; SQL> grant execute on runstats_pkg to public;

38 SQL> desc runstats PROCEDURE RS_MIDDLE PROCEDURE RS_PAUSE RunStats (PL/SQL) installasjon PROCEDURE RS_RESUME PROCEDURE RS_START PROCEDURE RS_STOP PROCEDURE RS_STOP Argumentnavn Type Inn/Ut Standard? P_DIFFERENCE_THRESHOLD NUMBER(38) IN P_INCLUDE_TIME_MODEL BOOLEAN IN DEFAULT PROCEDURE RS_STOP Argumentnavn Type Inn/Ut Standard? P_STATNAMES STATNAME_NTT IN P_INCLUDE_TIME_MODEL BOOLEAN IN DEFAULT PROCEDURE RS_STOP Argumentnavn Type Inn/Ut Standard? P_STATNAME_LIKE VARCHAR2 IN P_INCLUDE_TIME_MODEL BOOLEAN IN DEFAULT

39 RunStats (PL/SQL) demo Test prosedyre UTEN bind: create or replace procedure no_bind(i_max in number) as l_nr number; l_sql varchar2(100); begin for i in 1..i_max loop select tseq.nextval into l_nr from dual; l_sql:='insert into t1(id,n1) values (' l_nr ',' i ')'; execute immediate l_sql; end loop; end; /

40 RunStats (PL/SQL) demo Test prosedyre MED bind: create or replace procedure bind(i_max in number) as l_nr number; begin for i in 1..i_max loop select tseq.nextval into l_nr from dual; insert into t1(id,n1) values (l_nr,i); end loop; end; /

41 RunStats (PL/SQL) demo Test av prosedyrer UTEN og MED bind: set serveroutput on begin end; / runstats.rs_start; no_bind(1000); runstats.rs_middle; bind(1000); runstats.rs_stop(100); Snapshots av sesjons statistikk. NB! Info om latching er global! (men så lenge jeg er alene på systemet )

42 =============================================================================================== RunStats report : 29-JAN :48:13 =============================================================================================== Summary timings Type Name Run1 Run2 Diff TIMER cpu time (hsecs) TIMER elapsed time (hsecs) Comments: 1) Run2 was 73,7% quicker than Run1 2) Run2 used 73,7% less CPU time than Run Statistics report Type Name Run1 Run2 Diff LATCH cache buffers chains 11,831 11, STAT undo change vector size 79,308 79, STAT parse count (hard) 1, STAT enqueue releases 1, ,003 STAT recursive calls 8,406 7,403-1,003 STAT enqueue requests 1, ,005 STAT redo size 287, ,724-1,700 LATCH enqueues 2, ,005 LATCH enqueue hash chains 2, ,008 LATCH shared pool simulator 2, ,539 STAT cell physical IO interconnect bytes 16, ,384 STAT physical read bytes 16, ,384 STAT physical read total bytes 16, ,384 LATCH row cache objects 24, ,980 STAT session uga memory 523, ,760 31,856 LATCH shared pool 44, ,059

43 Latching report Type Name Run1 Run2 Diff LATCH total latches used 90,934 16,087-74,847 Comments: 1) Run2 used 82,3% fewer latches than Run Time model report Type Name Run1 Run2 Diff TIME sequence load elapsed time 6,948 6, TIME PL/SQL execution elapsed time 30,109 25,302-4,807 TIME hard parse elapsed time 173, ,888 TIME parse time elapsed 280,227 17, , About RunStats v2.01 by Adrian Billington (http://www.oracle-developer.net) - Based on the original RUNSTATS utility by Tom Kyte =============================================================================================== End of report =============================================================================================== PL/SQL-prosedyren ble fullf?rt.

44 RunStats (PL/SQL) demo Test av prosedyrer med ROLLBACK or TRUNCATE begin truncate table t1; runstats.rs_start; no_bind(1000); runstats.rs_pause; truncate table t1; runstats.rs_resume; bind(1000); runstats.rs_stop(1000); end; /

45 MyStats (PL/SQL) pakke Utviklet av Jonathan Lewis Utvidet av Adrian Billington (www.oracle-developer.net) Verktøy for Sesjons Statistikk Lar oss hente ut ressurs forbruk for en enhet med arbeid utført mellom to snapshot. designet for bruk I begrensende utvikler miljøer time model statistics mulig å hente ut spesifikk statistikk

46 MyStats (PL/SQL) installasjon Opprette UTIL bruker SQL> create user util identified by 'aha&26fdfj'; SQL> grant create session to util; SQL> grant create public synonym to util; SQL> grant create procedure to util; SQL> grant select any dictionary to util; -- Eller V$STATNAME, V$MYSTAT, V$LATCH Opprette MYSTATS pakke SQL> conn util SQL> create or replace public synonym mystats for mystats_pkg; SQL> grant execute on mystats_pkg to public;

47 SQL> desc mystats PROCEDURE MS_START PROCEDURE MS_STOP PROCEDURE MS_STOP MyStats DESCRIBE Argumentnavn Type Inn/Ut Standard? P_THRESHOLD NUMBER(38) IN PROCEDURE MS_STOP Argumentnavn Type Inn/Ut Standard? P_STATNAMES STATNAME_NTT IN PROCEDURE MS_STOP Argumentnavn Type Inn/Ut Standard? P_STATNAME_LIKE VARCHAR2 IN

48 MyStats demo set serveroutput on declare begin end; / l_cnt number; mystats.ms_start; select * from big_table where owner= PUBLIC and object_type= SYNONYM and created >= systimestamp-900 and created <= systimestamp; --mystats.ms_stop(100); mystats.ms_stop(mystats.statname_ntt('consistent gets', 'physical reads'));

49 ========================================================================================= MyStats report : 04-MAR :22:24 ========================================================================================= Summary Timings Type Statistic Name Value TIMER snapshot interval (seconds) 0.26 TIMER CPU time used (seconds) Statistics Report Type Statistic Name Value STAT physical reads 0 STAT consistent gets 4, About MyStats v2.01 by Adrian Billington (http://www.oracle-developer.net) - Based on the SNAP_MY_STATS utility by Jonathan Lewis ========================================================================================= End of report ========================================================================================= PL/SQL-prosedyren ble fullf?rt.

50 ========================================================================================= MyStats report : 04-MAR :31:47 ========================================================================================= Summary Timings Type Statistic Name Value TIMER snapshot interval (seconds) 0.25 TIMER CPU time used (seconds) Statistics Report Type Statistic Name Value LATCH simulator hash latch 294 TIME PL/SQL execution elapsed time 2,333 STAT no work - consistent read gets 4,691 STAT consistent gets 4,705 STAT consistent gets from cache 4,705 STAT consistent gets from cache (fastpath) 4,705 STAT session logical reads 4,705 LATCH cache buffers chains 9,411 STAT session uga memory 458,416 STAT session pga memory 786, About End of report ========================================================================================= PL/SQL-prosedyren ble fullf?rt.

51 Oppsummering Der det er hensiktsmessig o Bruk BIND variabler o Bruk LITERALER Gjelder også IN-liste spørringer Bind og histogrammer er motsetninger Bruk verktøy som f.eks. Runstats for å sammenligne alternative løsninger Spørsmål?

52 Kontakt Eller vi snakkes i baren!

53

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

1. Introduksjon til Oracle Express Edition

1. Introduksjon til Oracle Express Edition Kjell Toft Hansen 22.06.2010 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO177D Databaseprogrammering med PL/SQL 1. Dette notatet skal gi deg en kort innføring i bruken av Oracle

Detaljer

Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems

Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems INF329, høsten 2005 Utvikling av sikre applikasjoner Martin Lie martin@mq.no 2005-11-02 Kapittel 1: The Basics HTTP Sesjoner

Detaljer

SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM

SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM 2 TEMA 1 MULTIPROSESSERING MED DATASTEGET Multiprosessering har lenge vært et tema i SAS Stadig ny funksjonalitet er med på

Detaljer

Metaspråket for å beskrive grammatikk

Metaspråket for å beskrive grammatikk 1 SQL-syntaks Korrekt språkbruk bygger på et sett av regler. Eksempler: En SQL utvalgsspørring inneholder alltid ordene SELECT og FROM, mens WHERE og tilhørende betingelse er valgfri. Etter SELECT kan

Detaljer

To dagers sikkerhet...

To dagers sikkerhet... To dagers sikkerhet......på kun en time Ingemar Jansson Haverstad OUGN ettermiddagsseminar 2012 i Bergen ingemar@oraklet.no www.oraklet.no/foredrag 07.11.2012 2 Sikkerhet 2 Day + Security Guide (11.2),

Detaljer

DATAUTFORSKNING I EG, EG 7.1 OG EGENDEFINERTE FUNKSJONER SAS FANS I STAVANGER 4. MARS 2014, MARIT FISKAAEN

DATAUTFORSKNING I EG, EG 7.1 OG EGENDEFINERTE FUNKSJONER SAS FANS I STAVANGER 4. MARS 2014, MARIT FISKAAEN DATAUTFORSKNING I EG, EG 7.1 OG EGENDEFINERTE FUNKSJONER SAS FANS I STAVANGER 4. MARS 2014, MARIT FISKAAEN 2 INNLEDNING TEMA I SAS Enterprise Guide versjon 5.1 (februar 2012) kom det et nytt datautforskingsverktøy,

Detaljer

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet. TDT445 Øving 4 Oppgave a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet. Nøkkel: Supernøkkel: Funksjonell avhengighet: Data i en database som kan unikt identifisere (et sett

Detaljer

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

1. SQL datadefinisjon og manipulering

1. SQL datadefinisjon og manipulering Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL datadefinisjon og manipulering Tore Mallaug 7.10.2008 Lærestoffet er utviklet for faget Databaser 1. SQL datadefinisjon og manipulering

Detaljer

Databaser & objektorientering.

Databaser & objektorientering. Databaser & objektorientering. Noen grunnbegreper innen objektorientering. Klasser og forekomster klasser beskriver strukturen for noe. Beskrivelsen inneholder: et navn attributter /egenskaper / tilstander

Detaljer

Paul Hinsch. MICADO AS Utviklet MapBasic applikasjoner i 10 år. Registreringsknapper og Objektdialog

Paul Hinsch. MICADO AS Utviklet MapBasic applikasjoner i 10 år. Registreringsknapper og Objektdialog Brukerdefinerte registreringsknapper og objektdialog Paul Hinsch MICADO AS Utviklet MapBasic applikasjoner i 10 år Paul Hinsch MICADO AS 2011 Brukere klarer ikke alltid selv å styre hvilket kartlag data

Detaljer

Feilsøking i BO. Olav Syse, konsulent. Jan Terje Hansen, service manager. Be business intelligent

Feilsøking i BO. Olav Syse, konsulent. Jan Terje Hansen, service manager. Be business intelligent Feilsøking i BO Olav Syse, konsulent Jan Terje Hansen, service manager Hovedfokus: Business Intelligence 900 ansatte i Norge, Sverige, Danmark, Finland, Estland, Latvia, Litauen og Polen 135 ansatte i

Detaljer

SQL 3: Opprette tabeller, datainnsetting og utsnitt

SQL 3: Opprette tabeller, datainnsetting og utsnitt SQL 3: Opprette tabeller, datainnsetting og utsnitt Læreboka kap. 4 03.11.2008 Kjell Toft Hansen 1 Datainnsetting Legg til en ny leverandor i tabellen leverandor INSERT INTO leverandor (lev_nr, lev_navn,

Detaljer

Implementering av caching ved hjelp av Spring. Christian Vestøl 27.04.06

Implementering av caching ved hjelp av Spring. Christian Vestøl 27.04.06 Implementering av caching ved hjelp av Spring Christian Vestøl 27.04.06 Agenda Kort introduksjon til Spring med Spring Praktiske eksempler Forskjellige rammeverk for caching April 2006 2 Kort om Spring

Detaljer

Object interaction. Innhold. Abstraksjon 03.09.2007. Grunnleggende programmering i Java Monica Strand 3. september 2007.

Object interaction. Innhold. Abstraksjon 03.09.2007. Grunnleggende programmering i Java Monica Strand 3. september 2007. Object interaction Grunnleggende programmering i Java Monica Strand 3. september 2007 1 Innhold Til nå: Hva objekter er og hvordan de implementeres I klassedefinisjonene: klassevariable (fields), konstruktører

Detaljer

Å lage Noark 4 uttrekk selv. Thomas Sødring thomas.sodring@jbi.hio.no 22452610/99570472

Å lage Noark 4 uttrekk selv. Thomas Sødring thomas.sodring@jbi.hio.no 22452610/99570472 Å lage Noark 4 uttrekk selv Thomas Sødring thomas.sodring@jbi.hio.no 22452610/99570472 Prosjektet IKA Kongsberg / HiOA Kan vi lage et Noark 4 uttrekk for en av IKA Kongsbergs kommuner? Uformell samarbeid

Detaljer

Hvordan bryte seg inn i Oracle databaser?

Hvordan bryte seg inn i Oracle databaser? Hvordan bryte seg inn i Oracle databaser? Ingemar Jansson Haverstad ingemar@oraklet.no www.oraklet.no/foredrag Version 1.0 13.03.2007 Bakgrunn Kilder Verktøy Passord Rettigheter Oracle programvare SQL*Net

Detaljer

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012 Om verktøyet Formålet med dette verktøyet er å migrere informasjon fra en databasevariant til en annen, i denne veiledningen fra Oracle til MySQL. Dette gjøres som første ledd i en avleveringsprosess.

Detaljer

PostGIS som navet i dataforvaltningen ved Skog og landskap

PostGIS som navet i dataforvaltningen ved Skog og landskap PostGIS som navet i dataforvaltningen ved Skog og landskap muligheter, utfordringer og erfaringer Ingvild Nystuen, Lars Opsahl, Teknologiforum, 12.11.2014 Skog og landskap Den store verden Data kopieres

Detaljer

MySQL. Historikk. Nedlasting og installasjon

MySQL. Historikk. Nedlasting og installasjon 1 MySQL MySQL kan lastes ned gratis fra Internett (dev.mysql.com/doc). Vi forklarer hvordan man laster ned og installerer verktøyet, og også hvordan man kommer i gang med å lage databaser i MySQL. Historikk

Detaljer

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Database security Kapittel 14 Building Secure Software Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Kort introduksjon Database er en organisert samling av data. SQL(Structured Query Language)

Detaljer

Agenda. Data og grenser Kontekster XSS XSS og kompliserende kontekster Injection attacks Beskyttelse OWASP

Agenda. Data og grenser Kontekster XSS XSS og kompliserende kontekster Injection attacks Beskyttelse OWASP Når data krysser grenser Erlend Oftedal, BEKK Knut Vidar Siem, Objectware Communities in Action 10. mai 2010 Copyright The OWASP Foundation Permission is granted to copy, distribute and/or modify this

Detaljer

Oppgave 1 1. Spørring: Resultattabell: 2. Spørring: Resultattabell: 3. Spørring:

Oppgave 1 1. Spørring: Resultattabell: 2. Spørring: Resultattabell: 3. Spørring: Kjell Toft Hansen 02.10.2008 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1: databaser Oppgave 1 1. Spørring: SELECT oh.*, delnr, kvantum FROM ordrehode oh, ordredetalj

Detaljer

Transaksjoner og flerbrukerproblematikk. Transaksjoner

Transaksjoner og flerbrukerproblematikk. Transaksjoner LC238D http://www.aitel.hist.no/fag/_dmdb/ Transaksjoner og flerbrukerproblematikk Transaksjoner side 2-4 Låseteknikker side 5 Isolasjonsnivåer side 6-7 Flerbrukerproblemer i fbm utførelse av transaksjoner

Detaljer

Transaksjoner og flerbrukerproblematikk. Transaksjoner

Transaksjoner og flerbrukerproblematikk. Transaksjoner LC238D http://www.aitel.hist.no/fag/_dmdb/ Transaksjoner og flerbrukerproblematikk Transaksjoner side 2-4 Låseteknikker side 5 Isolasjonsnivåer side 6-7 Flerbrukerproblemer i fbm utførelse av transaksjoner

Detaljer

Pen- tes'ng av webservices. Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman

Pen- tes'ng av webservices. Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman Pen- tes'ng av webservices Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman Om meg Gruppe- og utviklingsleder på FSAT Felles studieadministra'vt tjenestesenter Sikkerhetsekspert

Detaljer

Feilmelding Årsak Løsning

Feilmelding Årsak Løsning Request for the permission of type 'System.Security.Permissions.EnvironmentPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed Feil oppstod i Window.DialogWindow:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 4.mai 2011 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D Campus: LC191D Videregående

Detaljer

From a table based Feature Catalogue to GML Application schemas

From a table based Feature Catalogue to GML Application schemas From a table based Feature Catalogue to GML Application schemas 05/ 09/ 2015 EuroSDR Data modelling workshop, Copenhagen 28.-30.1.2015 Knut Jetlund Norwegian Public Roads Administration knut.jetlund@vegvesen.no

Detaljer

Eksamen i Internetteknologi Fagkode: IVA1379

Eksamen i Internetteknologi Fagkode: IVA1379 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: IVA1379 Tid: Mandag, 07.06.04, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 4 oppgaver

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - Kandidatnr: AITeL Eksamensdato: 2.desember 2009 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D LO191D Videregående programmering

Detaljer

Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1 Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015 Tid: 10-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 13 med forside Ingen Ingen Vedlegg: Eksempeldata til oppgave 1 Eksamensresultater

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

Obligatorisk oppgave 3 i Databaseadministrasjon.

Obligatorisk oppgave 3 i Databaseadministrasjon. Obligatorisk oppgave 3 i Databaseadministrasjon. Applikasjonsutvikling med databaser Gruppenummer 7 Av Kai Hagali Ole J. Schön Cato Goffeng Høgskolen i Østfold 22. Oktober 2012 Innhold 1 Tilkobling til

Detaljer

SuperOffice hurtigstart guide

SuperOffice hurtigstart guide SuperOffice hurtigstart guide Searchdaimon ES (Enterprise Server) Innholdsfortegnelse Innlednig... 2 Instalere SuperOffice konektor... 3 Steg 2 Database driver... 4 Steg 3 Database setting... 5 Steg 4

Detaljer

Programmeringsspråk for nybegynnere. Krav til språket. Krav til språket. Krav til språket

Programmeringsspråk for nybegynnere. Krav til språket. Krav til språket. Krav til språket Programmeringsspråk for nybegynnere Krav til språket Hva om vi laget vårt eget språk til INF1000? Programmeringsspråket må være så enkelt som mulig. (Programmering er vanskelig nok som det er.) Hvilke

Detaljer

Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først

Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Køer Hva er en kø? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn først Et nytt element legges alltid til sist i køen Skal vi ta ut et element, tar vi alltid

Detaljer

Effektiv Systemadministrasjon

Effektiv Systemadministrasjon Effektiv Systemadministrasjon UBW MILESTONE WILLIAM NILSEN Introduksjon William Nilsen ASP/Cloud avdelingen i Evry Jobbet flere år med generelt teknisk drift og ca 3 år med drift av UBW ASP/Cloud avdelingen

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

Detaljer

>>12 Arbeide med MySQL

>>12 Arbeide med MySQL 106 Snarveien til MySQL og Dreamweaver CS5 >>12 Arbeide med MySQL I dette kapittelet vil du lære hvordan du installerer MySQL Workbench å opprette prosjekter å lage tabeller hvordan du ser på innholdet

Detaljer

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad. EKSAMEN Emnekode: Emne: ITM20606 Webprogrammering med PHP Dato: Eksamenstid: 11/12-2007 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom

Detaljer

UI-View Installasjon og konfigurasjon for IGate + RX<->TX av meldinger og ingen ting annet!

UI-View Installasjon og konfigurasjon for IGate + RX<->TX av meldinger og ingen ting annet! UI-View Installasjon og konfigurasjon for IGate + RXTX av meldinger og ingen ting annet! For å fullføre denne installasjon trenger du en PC med Windows XP/Vista/7, fast Internett forbindelse og en TNC

Detaljer

1 Kodegenerering fra Tau Suiten

1 Kodegenerering fra Tau Suiten Kodegenerering fra Tau Suiten For å generere Javakode eller en annen form for programmeringskode ut i fra Tau suiten, er det visse ting som må være utført.. En UML modell må eksistere og være korrekt.

Detaljer

MySQL-database, php. Innhold. 8 MySQL-database, php. 8.1 Databasen MySQL

MySQL-database, php. Innhold. 8 MySQL-database, php. 8.1 Databasen MySQL Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Helge Hafting 16.10.2007 Lærestoffet er utviklet for faget LV476D/LN476D Linux systemdrift Innhold 8 1 8.1 Databasen MySQL.............................

Detaljer

Ulike DBMSer. Mest kjente: Oracle PostGreSQL* MySQL* SQLServer* DB2 SQLite Access (DBMS og utv. verktøy i ett) *Skal benyttes i kurset.

Ulike DBMSer. Mest kjente: Oracle PostGreSQL* MySQL* SQLServer* DB2 SQLite Access (DBMS og utv. verktøy i ett) *Skal benyttes i kurset. Ulike DBMSer Mest kjente: Oracle PostGreSQL* MySQL* SQLServer* DB2 SQLite Access (DBMS og utv. verktøy i ett) osv *Skal benyttes i kurset. Tom Heine Nätt / Edgar Bostrøm Hva er likt for disse (De fleste

Detaljer

Installasjonsveiledning

Installasjonsveiledning Installasjonsveiledning Magne Rodem og Jan-Erik Strøm 18. juni 2006 Innhold 1 Installasjon av Web Service 3 1.1 Krav........................................... 3 1.2 Installasjon av Sun Java System Application

Detaljer

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011)

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag til oppgave 7, 8, og 9 mangler Klasser og objekter (kap. 8.1-8.14 i "Rett på Java" 3. utg.) NB! Legg merke til at disse

Detaljer

Installasjonen krever en Windows 2003 server innmeldt i domene.

Installasjonen krever en Windows 2003 server innmeldt i domene. Installasjon av IAS Installasjonen krever en Windows 2003 server innmeldt i domene. Det kreves en IAS server pr. domene Steg 1) Installasjon av IAS Gå til Kontrollpanel Legg til eller fjern programmer

Detaljer

EKSAMEN I FAG TDT4180 MMI Mandag 18. mai 2009 Tid: kl. 0900-1300

EKSAMEN I FAG TDT4180 MMI Mandag 18. mai 2009 Tid: kl. 0900-1300 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Dag Svanæs, Tlf: 73 59 18 42 EKSAMEN I FAG TDT4180 MMI Mandag 18. mai 2009

Detaljer

SQL SELECT-FROM-WHERE. Skjemadefinisjon og datainnsetting i SQL. Semantikk bak ein-relasjons-spørring

SQL SELECT-FROM-WHERE. Skjemadefinisjon og datainnsetting i SQL. Semantikk bak ein-relasjons-spørring SQL Språk for Skjemadefinisjon Spørringar Database-oppdateringar Svært høgnivå: i prinsippet skriv ein kva ein vil ha som resultat, utan å spesifisere korleis Sterk grad av optimalisering effektivt Skjemadefinisjon

Detaljer

En lett innføring i foreninger (JOINs) i SQL

En lett innføring i foreninger (JOINs) i SQL En lett innføring i foreninger (JOINs) i SQL Noen ord om forening (JOIN)! 2 JOINs til gjennomgang! 3 1. INNER JOIN! 3 Eksempel på [INNER] JOIN! 4 NATURAL JOIN! 5 Eksempel på NATURAL JOIN! 5 2. LEFT [OUTER]

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 20. mai 2005 Varighet: 3 timer (09:00 12:00) Fagnummer: Fagnavn: Klasse(r): LV197D Webprogrammering med

Detaljer

EKSAMEN I FAG TDT4180 - MMI Lørdag 4. juni 2005 Tid: kl. 0900-1300

EKSAMEN I FAG TDT4180 - MMI Lørdag 4. juni 2005 Tid: kl. 0900-1300 Side 1 av 7 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Dag Svanæs, Tlf: 73 59 18 42 EKSAMEN I FAG TDT4180 - MMI Lørdag

Detaljer

LocalBank Prosjektbeskrivelse

LocalBank Prosjektbeskrivelse LocalBank Prosjektbeskrivelse INNHOLD MÅL... 2 STRUKTUR... 2 IMPLEMENTASJON AV ILOCALBANKREPOSITORY... 3 GUI... 4 EXCEPTION... 4 KODE... 4 NOEN KLASSER OG SPESIELLE EMNER SOM DE VISER... 5 KLASSE DIAGRAMMER...

Detaljer

Introduksjon til fagfeltet

Introduksjon til fagfeltet LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side

Detaljer

Klasser skal lages slik at de i minst mulig grad er avhengig av at klienten gjør bestemte ting STOL ALDRI PÅ KLIENTEN!

Klasser skal lages slik at de i minst mulig grad er avhengig av at klienten gjør bestemte ting STOL ALDRI PÅ KLIENTEN! Å lage sikre klasser Unntaksklassene i Java-API-et Unntakshåndtering i databasesammenheng try-catch-finally-setningen Trelagsarkitektur; egen databaseklasse Transaksjonshåndtering LC191D Videregående programmering

Detaljer

Dagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn?

Dagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn? Dagens tema: 12 gode råd for en kompilatorskriver Hva skal gjøres med navn? Sjekking av navn Hvordan sjekke navn? Testutskrifter 12 gode råd En kompilator må også sjekke riktig navnebruk: Det må ikke forekomme

Detaljer

WWW.CERT.DK. Introduction to DK- CERT Vulnerability Database

WWW.CERT.DK. Introduction to DK- CERT Vulnerability Database Introduction to DK- CERT Vulnerability Database By Peter Rickers and Mikael Stamm 1 Fundamental Idea Securing of networks, in-house and externally Savings for the costumers Making admission to the correct

Detaljer

Trådløssamling NORDUnet Stockholm 15.3.2013 Tom Ivar Myren

Trådløssamling NORDUnet Stockholm 15.3.2013 Tom Ivar Myren Trådløssamling NORDUnet Stockholm 15.3.2013 Tom Ivar Myren Agenda 08:30 08:45 Velkommen, kaffe 08:45 09:15 CAT en enclere hverdag for it avdelingen Hvordan få aksess, opprette profil, bruk 09:15 09:45

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Datateknikk Side 1 av 8 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Mandag, 23.05.05, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 3 oppgaver og

Detaljer

EKSAMEN. TILLATTE HJELPEMIDLER: Alle trykte og skrevne. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag

EKSAMEN. TILLATTE HJELPEMIDLER: Alle trykte og skrevne. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag KANDIDATNUMMER: EKSAMEN EMNENAVN: Programutvikling EMNENUMMER: IMT3281 EKSAMENSDATO:05/12-2007 KLASSE: 06HBINDA/06HBINDP TID: 09.00 13.00 EMNEANSVARLIG: Øivind Kolloen ANTALL SIDER UTLEVERT: 7 TILLATTE

Detaljer

SmartPass Mini User Manual BBNORGE.NO

SmartPass Mini User Manual BBNORGE.NO SmartPass Mini User Manual BBNORGE.NO Intro Welcome to the usermanual for your SmartPass Mini system. The first time you start the SmartPass you have to request a License. This is to regiser your license

Detaljer

EKSAMEN I FAG TDT4180 - MMI Lørdag 11. august 2012 Tid: kl. 0900-1300

EKSAMEN I FAG TDT4180 - MMI Lørdag 11. august 2012 Tid: kl. 0900-1300 Side 1 av 8 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Dag Svanæs, Tlf: 73 59 18 42 EKSAMEN I FAG TDT4180 - MMI Lørdag

Detaljer

Når blir et sikkert system for sikkert?

Når blir et sikkert system for sikkert? Når blir et sikkert system for sikkert? Ingemar Jansson Haverstad ingemar@oraklet.no www.oraklet.no/foredrag Versjon 1.0 31.08.2005 Sikkert? Hvor høy oppe tid ønskes? 99,9999% 7x24 Installasjon Oppgradering

Detaljer

Løsningsforslag til eksamen 24. november 2015

Løsningsforslag til eksamen 24. november 2015 Operativsystemer med Linux Løsningsforslag til eksamen 24. november 2015 Oppgave 1 a) Et OS deler tiden inn i små deler, typisk et hundredels sekund, og fordeler slike korte timeslices til alle prossene

Detaljer

Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1

Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1 Delkapittel 3.1 Grensesnittet Liste Side 1 av 11 Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1 3.1 En beholder 3.1.1 En beholder En pappeske er en beholder En beholder er noe vi kan legge ting

Detaljer

Munik sin hjemmeside BRUKERMANUAL LITAL ROZENTAL-EIDE

Munik sin hjemmeside BRUKERMANUAL LITAL ROZENTAL-EIDE 2014 Munik sin hjemmeside BRUKERMANUAL LITAL ROZENTAL-EIDE Hjemmesiden er utviklet og designet av Favn Design Hjemmeside: favndesign.no e-post: lital@favndesign.no Mobil: 41 27 80 55 Innholdsfortegnelse

Detaljer

Ting tar IKKE tid. Erfaringer med store databaser

Ting tar IKKE tid. Erfaringer med store databaser Ting tar IKKE tid. Erfaringer med store databaser Ingemar Jansson Haverstad OUGN Vårseminar 8. april 2011 ingemar@oraklet.no www.oraklet.no/foredrag Store databaser Det vil si: Enkelte oppgaver tar IKKE

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 05/06-2009 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Programvareutvikling hos Sun Microsystems. Jørgen Austvik Sun Microsystems Database Technology Group

Programvareutvikling hos Sun Microsystems. Jørgen Austvik Sun Microsystems Database Technology Group Programvareutvikling hos Sun Microsystems Jørgen Austvik Sun Microsystems Database Technology Group Innhold Sun i Trondheim Hva vi lager Utviklingsprosesser Kvalitetsarbeid > Mål > Hva vi gjør Verktøy

Detaljer

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt. Side 1 av 6 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL EKSAMENSOPPGAVE I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER, ver

Detaljer

Installasjonen krever en Windows 2008 server innmeldt i domene.

Installasjonen krever en Windows 2008 server innmeldt i domene. Installasjon av NPS Installasjonen krever en Windows 2008 server innmeldt i domene. Det kreves en NPS server pr. domene Steg 1) Legg til rollen Network Policy and Access Services, den eneste rolletjenesten

Detaljer

Oppdatering av person/studentforekomster i FS mot folkeregisteret

Oppdatering av person/studentforekomster i FS mot folkeregisteret Oppdatering av person/studentforekomster i FS mot folkeregisteret Det forutsettes at tillatelse til oppdatering av FS mot folkeregisteret er innhentet og at man er registrert som kunde hos EVRY. Mal for

Detaljer

1. Profiler og variabler

1. Profiler og variabler Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Profiler og variabler Stein Meisingseth 26.05.2014 Lærestoffet er utviklet for faget IDRI3005 PowerShell 1. Profiler og variabler Resymé:

Detaljer

Småteknisk Cantor Controller installasjon

Småteknisk Cantor Controller installasjon Cantor AS Småteknisk Cantor Controller installasjon 10.10.2012 INSTALLASJON OG OPPSETT AV CANTOR CONTROLLER 3 Nedlasting av programfiler 3 Nyinstallasjon server / enbruker 3 A. Controller instansen som

Detaljer

http://balder/obs2.nsf/8178b1c14b1e9b6b8525624f0062fe9f/71e1616e4d33c749c125... Controller Brukerstøttedatabase Ottar Holstad/Cantor 09.

http://balder/obs2.nsf/8178b1c14b1e9b6b8525624f0062fe9f/71e1616e4d33c749c125... Controller Brukerstøttedatabase Ottar Holstad/Cantor 09. Side 1 av 6 Controller Brukerstøttedatabase Ottar Holstad/Cantor 09.01 14:18. Emne/tittel:. Kategori: "Kan ikke koble til databasen! Sjekk ODBC og event. BDE". Feilmeldinger ODBC-Administrator (OpenDataBaseConnectivity)

Detaljer

Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services

Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services Dokumentasjon levert av: Prosjekt: Norsk Data Senter AS Installasjon av Intentor Helpdesk Norsk Data Senter AS e-post info@nds.no

Detaljer

Bestille flerbindsverk planlagt i flere bind som utgis over tid:

Bestille flerbindsverk planlagt i flere bind som utgis over tid: 1 Revidert 16.1.2015 Sissel Sveipe Knudsen Bestille flerbindsverk planlagt i flere bind som utgis over tid: 1. Velg rett bibliotek (acquisitions department) i Currently at 2. Søk etter tittel på flerbindsverk

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 01/06-2010 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Kjøre Wordpress på OSX

Kjøre Wordpress på OSX Kjøre Wordpress på OSX Alt etter hva du ønsker å bruke Webserveren til er det flere måter å gjøre dette på. Ønsker du kun en side som skal dele sider du lager manuelt, med PHP, GD etc eller med server

Detaljer

WinTid Scheduler. Oppgradering til versjon 6.0.1 HRM

WinTid Scheduler. Oppgradering til versjon 6.0.1 HRM Oppgradering til versjon 6.0.1 HRM Innholdsfortegnelse 1. OM DOKUMENTET... 3 1.1 DOKUMENTETS MÅLSETNING... 3 1.2 HVEM ER DOKUMENTET SKREVET FOR?... 3 1.3 OPPBYGNING OG OPPBEVARING... 3 1.4 ANSVARLIG FOR

Detaljer

Lynkurs i shellprogrammering under Linux

Lynkurs i shellprogrammering under Linux Lynkurs i shellprogrammering under Linux Interaktiv bruk av shell Shell/skall er en applikasjon som lar bruker taste inn tekstlige kommandoer til Linux en og en linje om gangen (leser linjer fra stdin).

Detaljer

Kan en sikker løsning bli en for sikker løsning?

Kan en sikker løsning bli en for sikker løsning? Kan en sikker løsning bli en for sikker løsning? Ingemar Jansson Haverstad ingemar@oraklet.no www.oraklet.no/foredrag Version 0.86 02.05.2005 Sikkert? 2 Hvor høy oppetid ønskes? 99,9999% 7x24 Installasjon

Detaljer

Systemutvikling fra kjernen og ut, fra skallet og inn

Systemutvikling fra kjernen og ut, fra skallet og inn Systemutvikling fra kjernen og ut, fra skallet og inn Løsninger til oppgaver i kap A.10 i Appendiks A - SQL Legg merke til at oppgave 22 er blitt noe presisert. 1. Hvor mange innbyggere er det i Norge?

Detaljer

Kompilering Statiske Syntaksanalyse Feilsjekking Eksempel Oppsummering

Kompilering Statiske Syntaksanalyse Feilsjekking Eksempel Oppsummering Dagens tema Hva er kompilering? Hvordan foreta syntaksanalyse av et program? Hvordan programmere dette i Java? Statiske metoder og variabler Hvordan oppdage feil? Kildekode Hva er kompilering? Anta at

Detaljer

Om Samba/fildeling. Hans Nordhaug 17.09.2013. Institutt for informatikk Høgskolen i Molde

Om Samba/fildeling. Hans Nordhaug 17.09.2013. Institutt for informatikk Høgskolen i Molde Om Samba/fildeling Hans Nordhaug Institutt for informatikk Høgskolen i Molde 17.09.2013 Tema 1 Introduksjon Om SMB Om Samba Hvorfor Samba? 2 Generelt Delte ressurser Server Message Block En protokoll for

Detaljer

CMI. Brukermanual. Comendo Dronning Eufemias Gate 16 N-0191 Oslo T: +47 800 16 280 F: +47 939 11 906

CMI. Brukermanual. Comendo Dronning Eufemias Gate 16 N-0191 Oslo T: +47 800 16 280 F: +47 939 11 906 CMI Brukermanual Comendo Dronning Eufemias Gate 16 N-0191 Oslo T: +47 800 16 280 F: +47 939 11 906 Innholdsfortegnelse CMI CUSTOMER MANAGEMENT INTERFACE... 2 Customer Administration... 2 Customer Administration...

Detaljer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 99539963 Roger Midtstraum: 99572420

Detaljer

Kortversjon av brukerdokumentasjon Solman

Kortversjon av brukerdokumentasjon Solman Kortversjon av brukerdokumentasjon Solman For fullstendig versjon se brukerdokumentasjon i Solman. Første gangs pålogging Opprette sak fra SAP HR Opprette sak fra Solman Legge ved vedlegg Hente opp sak

Detaljer

TDT4300 Datavarehus og datagruvedri3, Våren 2014

TDT4300 Datavarehus og datagruvedri3, Våren 2014 TDT4300 Datavarehus og datagruvedri3, Våren 2014 23/1 2014 Trond Aalberg 1 Dagens tema MulAdimensjonale data Dimensjoner og hierarkier revisited Fra modellering Al OLAP implementasjon Vi ser på eksempler

Detaljer

Tabeller og enkle spørringer

Tabeller og enkle spørringer Tabeller og enkle spørringer Database, relasjonsdatabase Databasehåndteringssystem (DBHS) Databasesystem Tabell, kolonne, rad, datatype, verdi, primærnøkkel Utvalgsspørringer i SQL Velge ut rader Velge

Detaljer

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata IFD International Framework for Dictionaries Hvordan bygges en BIM? Hva kan hentes ut av BIM? Hvordan

Detaljer

Før du starter, del 2

Før du starter, del 2 1 Før du starter I Windows må du sørge for at tekst og andre elementer er satt til å vises normalt 100%. Visma Global støtter ikke zooming, da vil noen elementer forsvinne fra programmet og ikke fungere.

Detaljer

J2EE og distribuerte systemer Leksjon 10: Entity Beans (BMP)

J2EE og distribuerte systemer Leksjon 10: Entity Beans (BMP) J2EE og distribuerte systemer Leksjon 10: Entity Beans (BMP) Leksjonen er forfatters eiendom. Som kursdeltaker kan du fritt bruke leksjonen til eget personlige bruk. Kursdeltakere som ønsker å bruke leksjonene

Detaljer

Public roadmap for information management, governance and exchange. 2015-09-15 SINTEF david.norheim@brreg.no

Public roadmap for information management, governance and exchange. 2015-09-15 SINTEF david.norheim@brreg.no Public roadmap for information management, governance and exchange 2015-09-15 SINTEF david.norheim@brreg.no Skate Skate (governance and coordination of services in egovernment) is a strategic cooperation

Detaljer

Repetisjon, del 2. TDT 4110 IT Grunnkurs Professor Guttorm Sindre

Repetisjon, del 2. TDT 4110 IT Grunnkurs Professor Guttorm Sindre Repetisjon, del 2 TDT 4110 IT Grunnkurs Professor Guttorm Sindre Premieutdeling Kahoot Vinnere av enkeltrunder: Datamaskinens historie: mr.oyster (7311) Variable, aritmetiske op., etc.: Sha-ra (6155) if-setn.,

Detaljer

Miniverden og ER- modell

Miniverden og ER- modell TDT4145 Datamodellering og databasesystemer SQL- oppgave 1 Miniverden og ER- modell Vi tar utgangspunkt i en enkel modell for en pizza- restaurant, der følgende ER- diagram beskriver databasen: Relasjonsdatabase-

Detaljer