SQL. ISO SQL-standardene. Structured Query Language. Bruk av SQL. En innledende kommentar SQL-89 SQL-92 SQL:1999
|
|
- Kristen Dale
- 7 år siden
- Visninger:
Transkript
1 ISO SQL-standardene SQL Structured Query Language SQL-89 o Originalstandarden o Addendum for Embedded SQL (1994) SQL-92 o ISO/IEC 9075 SQL Database Databasetjener (Oracle) SQL:1999 o ISO/IEC 9075:1999 Det finnes i dag enklere språk for å kommunisere med databaser, men SQL er standardisert... INF102-sql-1 INF102-sql-2 Bruk av SQL Som selvstendig språk som regel interaktivt Som databasespråk i forbindelse med et vertsspråk (som Java, PHP, Pascal, ADA, COBOL, FORTRAN,... ) o Embedded SQL SQL-kommandoer som må prekompileres er lagt inn i programteksten o API (Application Programmer Interface) SQL kan kalles ved hjelp av biblioteksfunksjoner (Ikke ISO-standard, men de-facto-standarder som ODBC og JDBC) o Dynamisk SQL Spørringer lages av programmet under utførelsen Som språk for kommunikasjon mellom datamaskiner En innledende kommentar Teori er en ting, praksis er gjerne noe anna.: Relasjonsdatabaseteorien sier at en relasjon ikke kan ha flere like linjer. I kommersielle databasehåndteringssystemer fravikes denne regelen: Flere like linjer er altså mulig. Derfor snakker vi ofte om tabelldatabaser istedenfor relasjonsdatabaser. SQL er et programmeringsspråk for å håndtere tabelldatabaser. INF102-sql-3 INF102-sql-4
2 SQLs tre kommandokategorier DML Data Manipulation Language Datamanipuleringsspråk o SELECT o INSERT o UPDATE o DELETE DDL Data Definition Language Datadefinisjonsspråk (for skjemamanipulering) o CREATE o ALTER o DROP DCL Data Control Language Data-kontrollspråk (for tilgangskontroll) o GRANT o REVOKE UI Fylke fylkenavn 02 Akershus 03 Oslo Husholdningsavfall NOT NULL Eksempeldatabasen kommunenr kommunenavn avfallsmengde Halden 04 Moss Vestby avfallper Innbygger 387,1 403,1 421,6 INF102-sql-5 INF102-sql-6 SQL - Datamanipulering Enkel SQL-spørring Spørring (Query) resultatet er alltid en tabell Attributter vi ønsker ut o SELECT Oppdatering o INSERT o DELETE o UPDATE hente ut linjer (spørring) legge inn nye linjer slette linjer endre eksisterende linjer De fleste SQL på det kommersielle marked er case-insensitive du kan skrive kommandoer med store eller små bokstaver SELECT kommunenr, avfallsmengde Tabell vi henter data fra Alle attributtene SELECT * INF102-sql-7 INF102-sql-8
3 Filtrerende betingelser SELECT kommunenavn, avfallsmengde WHERE = ; Bare linjer som oppfyller denne betingelsen vil komme med i resultatet Velge ut attributter Velge ut linjer Operatorer i WHERE Matematiske sammenligningsoperatorer = <>!= < <=!>!< >= > Sann hvis likhet Sann hvis ulikhet Sann hvis mindre enn Sann hvis større enn Logiske operatorer AND OR Sann hvis mindre eller lik Sann hvis større eller lik Sann hvis begge sanne Sann hvis en eller begge sanne NOT Sann hvis usann og omvendt Presedensrekkefølge: sammenlikning, NOT, AND, OR. Bruk parenteser! INF102-sql-9 INF102-sql-10 Operatorer i WHERE (forts.) Spesielle operatorer BETWEEN AND... Sann hvis mellom... og......in (verdiliste) Sann hvis... i verdiliste LIKE *) Tekststreng-sammenlikning IS NULL Sann hvis NULL EXISTS Sann hvis NOT NULL Omnavning av attributter Ved hjelp av AS kan vi gi et attributt i resultatet et annet navn enn i tabellen vi henter dataene fra: SELECT kommunenr, avfallsmengde AS avfall *) LIKE tekststreng-sammenlikning med jokertegn: Resultatet får attributtene kommunenr og avfall % et vilkårlig antall av vilkårlige tegn _ ett vilkårlig tegn [tegnsekvens] ett vilkårlig tegn i tegnsekvensen (ikke i Oracle) INF102-sql-11 INF102-sql-12
4 Sortering I utgangspunktet er linjene i resultatet i vilkårlig rekkefølge De fleste databasehåndteringssystemer sorterer på primærnøkkel For å ha kontroll over rekkefølgen, bruk ORDER BY SELECT kommunenavn, avfallsmengde WHERE = Sortering på flere attributter SELECT kommunenavn, avfallperinnbygger WHERE = ORDER BY avfallperinnbygger DESC, kommunenavn ; ORDER BY avfallsmengde DESC; ASC stigende rekkefølge DESC synkende rekkefølge ASC er default Sorterer alfabetisk på kommunenavn innen like avfallsmengder INF102-sql-13 INF102-sql-14 Hvordan forhindre duplikate linjer Oppdatering legge inn linjer SELECT DISTINCT Nye linjer legges inn med INSERT INTO: Gir som resultat en tabell med ett attributt som inneholder alle hvert av dem forekommer én gang. DISTINCT gjelder kombinasjonen av alle attributter SELECT DISTINCT gir altså en relasjon! INSERT INTO tabellnavn VALUES(liste med verdier); eller INSERT INTO tabellnavn (liste med attributter) VALUES (liste med verdier); Default i SQL er SELECT ALL, dvs. at også duplikater tas med i resultatet (i strid med relasjons-databaseteorien) I den første formen legges verdiene inn i tabellen fra venstre mot høyre (ikke å anbefale). Gjenværende attributter blir NULL. I den andre formen velger vi hvilke attributter som skal få verdier, og i hvilken rekkefølge. Unevnte attributter blir NULL. INF102-sql-15 INF102-sql-16
5 Legge inn linjer eksempel INSERT INTO Fylke VALUES ( 13, NULL); eller INSERT INTO Fylke (, fylkenavn) VALUES ( 13, NULL); eller INSERT INTO Fylke (fylkenavn, ) VALUES (NULL, 13 ); eller INSERT INTO Fylke () VALUES ( 13 ); Oppdatering fjerne linjer Eksisterende linjer fjernes med DELETE FROM: DELETE FROM tabellnavn WHERE betingelse for linjer som skal fjernes; Eksempel: DELETE FROM Fylke WHERE = 13 ; SQL har ingen angrefunksjon! Vær derfor sikker på at betingelsen er korrekt, slik at det ikke fjernes linjer som ikke skulle vært fjernet. En DELETE FROM uten WHERE fjerner alle linjer i tabellen. INF102-sql-17 INF102-sql-18 Oppdatering endre eksisterende linjer Eksisterende linjer endres med UPDATE: UPDATE tabellnavn SET attributtnavn1 = Verdi eller uttrykk, attributtnavn2 = Verdi eller uttrykk,... WHERE betingelse for linjer som skal endres; Eksempel: UPDATE Husholdningsavfall SET avfallperinnbygger = avfallsmengde*1000/innbyggertall WHERE innbyggertall > 0; SQL Datatilgangskontroll Gi andre brukere tilgang til din database GRANT SELECT GRANT SELECT ON tabellnavn ON tabellnavn TO PUBLIC; TO bruker1, bruker2, ; Trekke tilbake tilgangstillatelse REVOKE ALL PRIVILEGES REVOKE ALL PRIVILEGES ON tabellnavn ON tabellnavn FROM PUBLIC; FROM bruker1, bruker2, ; Bare de mest vanlige og nyttige variantene er vist her INF102-sql-19 INF102-sql-20
6 Endre databasepassord For å endre databasepassord: ALTER USER brukernavn IDENTIFIED BY nyttpassord; Metadatabasen I Oracle er også metadatabasen en tabelldatabase kalt data dictionary Metadatabasen oppdateres av databasehåndteringssystemet når DDL-kommandoer utføres Bare databasehåndteringssystemet kan oppdatere metadatabasen Det nye passordet må skrives bare én gang på den annen side vises det i klartekst i kommandoen Brukeren kan imidlertid spørre mot metadatabasen med SQL Det er lagt til rette virtuelle tabeller for dette formål INF102-sql-21 INF102-sql-22 Noen spørringer mot metadatabasen i Oracle En oversikt over hele databasen SELECT object_name,object_type FROM user_objects; En oversikt over tabeller SELECT table_name FROM user_tables ; En oversikt over attributter SELECT table_name, column_name, data_type, data_length, nullable FROM user_tab_columns; En oversikt over virtuelle tabeller SELECT view_name FROM user_views; En oversikt over integritetsregler SELECT constraint_name, constraint_type, table_name, delete_rule FROM user_constraints; P = Primary key U = Unique key R = Referential integrity INF102-sql-23 Mer avanserte spørringer Spørringer mot flere tabeller Spørringer der samme tabell inngår flere ganger Spørringer med beregninger Spørringer med aggregerende funksjoner Nestede spørringer Virtuelle tabeller ( views ) INF102-sql-24
7 Spørringer mot flere tabeller ( join ) SELECT Fylke.,fylkenavn,kommunenr, kommunenavn,avfallsmengde, Fylke WHERE Husholdningsavfall.=Fylke.; Legg merke til: FROM-leddet inneholder flere tabeller WHERE-leddet inneholder join-betingelsen Det må være like mange join-betingelser som det er tabeller i FROMleddet utover den første hvis ikke får vi kartesiske produkter For å kunne referere til ulike attributter med samme navn kvalifiserer vi dem med tabellnavnet Resultat på neste lysark! INF102-sql-25 UI Resultat 02 fylkenavn Akershus Oslo kommunenr fylkenavn Akershus Fylke Husholdningsavfall kommunenavn Halden Moss Vestby kommunenr Eksempel på join Halden Moss Vestby avfallsmengde kommunenavn SQL-kommandoen på forrige lysark avfallsmengde INF102-sql-26 UI fylkenavn Akershus Oslo kommunenr 04 Fylke Husholdningsavfall kommunenavn Halden Moss Eksempel på join avfallsmengde Svalbard kommer ikke med i resultatet! Outer join i Oracle-SQL SELECT fylkenavn,kommunenr,kommunenavn,avfallsmengde, Fylke WHERE Husholdningsavfall.(+)=Fylke.; NULL 0000 Svalbard NULL Resultat fylkenavn kommunenr 04 kommunenavn Halden Moss avfallsmengde Outer join er ustandardisert, og SQLkommandoens utseende er derfor avhengig av databasehånderingssystemet. Resultat på neste lysark! INF102-sql-27 INF102-sql-28
8 UI fylkenavn Akershus Oslo kommunenr Eksempel på Outer join Fylke Husholdningsavfall kommunenavn avfallsmengde SQL-kommandoen på forrige lysark Aliaser SELECT F.Fylkenavn,H.Kommunenr,Kommunenavn H, Fylke F WHERE H.Fylkenr = F.Fylkenr; 04 Halden Moss Aliaser NULL 0000 Svalbard NULL Resultat fylkenavn kommunenr kommunenavn Halden avfallsmengde Aliaser brukes for å: Forkorte SQL-uttrykkene Løse navgivingskonflikter (særlig når en tabell joines med seg selv) 04 Moss NULL 0000 Svalbard NULL INF102-sql-29 INF102-sql-30 Eksempel joine en tabell med seg selv Person IU ansattnr ansattnavn sjef Hva heter sjefen? Ans00 Bjørk NULL SELECT P.ansattnr, Ans0002 Li Ans00 P.ansattnavn, Ans0003 Resultat ansattnr Dal ansattnavn Ans00 navnpåsjef S.ansattnavn AS navnpåsjef FROM Person P, Person S Ans00 Bjørk NULL WHERE P.sjef(+) = Ans0002 Li Bjørk S.ansattnr; Ans0003 Dal Bjørk Beregnede attributter SELECT-listen kan inneholde beregnede attributter (beregnede attributter er ikke lagret i databasen): SELECT kommunenavn, avfallsmengde*1000/innbyggertall AS beregnetavfallperinnbygger SELECT kommunenr AS kommunenr /* tekstsammenskjøting i Oracle-SQL */ SELECT 7777 AS tall FROM Fylke -- en spøk? ; INF102-sql-31 INF102-sql-32
9 Gruppering og aggregeringsfunksjoner Aggregeringsfunksjonene Attributtene i SELECT må enten grupperes eller aggregeres SELECT,SUM(avfallsmengde)AS avfall COUNT(*) COUNT(attributt) COUNT(DISTINCT attributt) Antall linjer i tabellen Antall verdier, NULL unntatt Antall ulike verdier MIN(attributt) Minste verdi GROUP BY ; Resultatet er en tabell der alle linjer med samme er slått sammen til én, og der hver linje inneholder og avfall lik summen av avfallsmengde for fylket. I standard SQL kan aggregeringsfunksjoner ikke brukes på beregnede attributter MAX(attributt) SUM(attributt) AVG(attributt) Største verdi Summen av verdiene Gjennomsnittet av verdiene SUM og AVG virker selvfølgelig bare på numeriske attributter! INF102-sql-33 INF102-sql-34 Noen COUNT-eksempler Betingelser på grupper SELECT COUNT(*) SELECT,SUM(avfallsmengde)AS avfall SELECT COUNT(kommunenavn) GROUP BY HAVING SUM(avfallsmengde) > 1000; SELECT COUNT(DISTINCT kommunenavn) WHERE filtrerer før grupperingen HAVING filtrerer etter grupperingen INF102-sql-35 INF102-sql-36
10 En fullstendig SELECT SELECT,SUM(avfallsmengde)AS avfall WHERE avfallsmengde < 300 GROUP BY HAVING SUM(avfallsmengde) > 1000 ORDER BY Sum(avfallsmengde) DESC; Utførelsesrekkefølge i SELECT WHERE Velger ut linjer Filtrering FROM Tabellene som skal brukes Gruppering GROUP BY Slår sammen linjer HAVING Velger ut sammenslåtte linjer Først velges ut alle linjer med Avfallsmengde < 300, så grupperes alle linjer med samme Fylkenr sammen til én, så velges ut de hvor summen av Avfallsmengde > 1000, til slutt sorteres på synkende sum av Avfallsmengde. Sortering ORDER BY Sorterer linjer SELECT Attributtene som skal returneres Filtrering av gruppe INF102-sql-37 INF102-sql-38 Nøstede SQL-spørringer Nøstet spørring: Spørring som inneholder en annen spørring den indre spørringen. Eksempel Finn kommunen med størst avfallsmengde: SELECT kommunenr, avfallsmengde Indre spørring utføres først WHERE avfallsmengde =(SELECT MAX(avfallsmengde) ); Datadefinisjon Oppretting og fjerning av tabeller Endring av tabeller Legge inn skranker o Primærnøkler o Referanseintegriteter Virtuelle tabeller INF102-sql-39 INF102-sql-40
11 Opprette tabell Lag tabell CREATE TABLE tabellnavn ( attributtnavn1 datatype attributtnavn2 datatype NOT NULL,... CONSTRAINT skrankenavn PRIMARY KEY (attributtnavn1,...) ); Eksempel CREATE TABLE Husholdningsavfall ( CHAR(2) NOT NULL, kommunenr CHAR(2) NOT NULL, kommunenavn VARCHAR(25) NOT NULL, avfallsmengde INT NOT NULL, innbyggertall INT NOT NULL, avfallperinnbygger DECIMAL(8,1), CONSTRAINT EntydigKommunenr PRIMARY KEY (kommunenr) ) ; Datatyper, se neste lysark Rød tekst: Integritetsregler INF102-sql-41 ISO SQL datatyper CHARACTER(antall tegn) tegnstreng (inntil 254 tegn) VARCHARACTER( ) tegnstreng (variabel lengde) INTEGER heltall (opptil 11 siffer) SMALLINT små heltall (DBMS-avhengig) NUMERIC(ant siffer,ant desimaler) desimaltall (opptil 20 siffer) DECIMAL(ant siffer,ant desimaler) desimaltall (DBMS-avhengig) FLOAT(presisjon) flytende tall REAL flytende tall (DBMS-avhengig) DOUBLE PRECISION flytende tall (DBMS-avhengig) DATE dato TIME klokkeslett TIMESTAMP dato og klokkeslett BIT binære siffer INF102-sql-42 Noen ORACLE Build in SQL datatyper Built-In Datatype NUMBER(p,s) CHAR(size) VARCHAR2(size) DATE Description Number having precision p and scale s. The precision p can range from 1 to 38. The scale s can range from -84 to 127. Fixed-length character data of length size bytes. Maximum size is 2000 bytes. Default and minimum size is 1 byte. Variable-length character string having maximum length size bytes. Maximum size is 4000, and minimum is 1. You must specify size for VARCHAR2. Valid date range from January 1, 4712 BC to December 31, 9999 AD. Du kan bruke SQL standardtyper, ORACLE SQL vil da oversette til en av sine egne CHAR(2) 02 Datatyping på primitivnivå fylkenavn Akershus CHAR(2) CHAR(4) CHAR(25) kommunenr Halden Moss Sarpsborg... er egentlig for primitivt: kommunenavn Ingen automatikk i at har samme verdiområde i ulike tabeller INSERT INTO Husholdningsavfall VALUES (, Moss, )??? avfallsmengde innbyggertall INF102-sql-43 INF102-sql-44
12 Eksplisitt datatyping (SQL:1999) Regler for tabell- og attributtnavn CREATE DISTINCT TYPE Fylkenr_type AS CHAR (2); Et navn (identifier) kan ikke være lengre enn 128 tegn (Oracle: 30 tegn) CREATE TABLE Husholdningsavfall ( Fylkenr Fylkenr_type,... ); Et navn må begynne med en bokstav Tillatte tegn er bokstaver, siffer og _ $ # Et navn kan ikke inneholde mellomrom CREATE TABLE Fylke( Fylkenr Fylkenr_type,... ) ; Reserverte ord kan ikke brukes Navn er case-insensitive Vanlig å henge sammen enkeltord med _ (Min_tabell) Navn skal være meningsfylte, og allikevel ikke for lange INF102-sql-45 INF102-sql-46 Fjerne tabell Fjern tabell DROP TABLE tabellnavn; Fjerner tabellen fullstendig, både metadata og data Eksempler: DROP TABLE Husholdningsavfall ; DROP TABLE Fylke ; Legg merke til at referanseintegritetsregler (se senere) fører til at tabeller må fjernes i en bestemt rekkefølge: Kontrollerte tabeller (de med fremmednøkkelen) først! Endre navn (ikke standard SQL) Endre tabell RENAME tabellnavn TO etannettabellnavn; Legge til attributt ALTER TABLE tabellnavn ADD nyttattributtnavn datatype ; Eksempel: ALTER TABLE Fylke ADD Avfallsmengde INT ; Det er litt ulike regler i forskjellige databasehåndteringssystemer om hvor store endringer som er tillatt. Bruk ikke NOT NULL her! INF102-sql-47 INF102-sql-48
13 Endre attributt i tabell Endre attributt ALTER TABLE tabellnavn MODIFY attributtnavn nydatatype NOT NULL ; Eksempel Vi forutsetter at Avfallsmengde ALTER TABLE Fylke nå har verdier! MODIFY Avfallsmengde INT NOT NULL ; De fleste databasehåndteringssystemer er meget restriktive med hensyn på endringer av kolonner det allerede finnes data i! Integritetsregler NOT NULL og PRIMARY KEY deklareres som regel i CREATE TABLE. Referanseintegritet deklareres som regel i en separat ALTER TABLE av kontrollert tabell: ALTER TABLE navn_på_kontrollert_tabell ADD CONSTRAINT navn_på_regel FOREIGN KEY(fremmednøkkelattributt) REFERENCES navn_på_kontrollerende_tabell ; Eksempel ALTER TABLE Husholdningsavfall ADD CONSTRAINT AvfallSkalHaFylke FOREIGN KEY() REFERENCES Fylke ; INF102-sql-49 INF102-sql-50 Oppdateringer og integritetsregler Ved forsøk på oppdateringer kan vi komme i konflikt med integritetsreglene. I så fall foreligger følgende muligheter (som deklareres i DML): o Avvise oppdateringen o Gjennomføre oppdateringen på en slik måte at integritetsreglene fremdeles er oppfylt Handlingsmønster ved overtredelse av referanseintegritet ALTER TABLE navn på kontrollert tabell ADD CONSTRAINT navn på regel FOREIGN KEY(fremmednøkkelattributt) REFERENCES navn_på_kontrollerende_tabell ON DELETE referential_action ; Eksempel: Forsøke å fjerne et fylke fra Fylke-tabellen o Avvisning med feilmelding o Fjerne fylket i Fylke-tabellen, og samtidig alle kommunene i fylket i Husholdningsavfall o Sette fremmednøkkelen i Husholdningsavfall til NULL eller UPDATE NO ACTION (gi feilmelding) CASCADE (fjern også kontrollerte linjer) SET NULL (sett fremmednøkkel til NULL) SET DEFAULT (sett fremmednøkkel til default -verdi) INF102-sql-51 INF102-sql-52
14 Virtuelle tabeller En virtuell tabell er et spørrings-resultat som kan brukes på lik linje med vanlige tabeller i etterfølgende SQL-kommandoer Virtuelle tabeller lagres ikke i databasen endrer datagrunnlaget for spørringen seg, endres også den virtuelle tabellen Virtuelle tabeller brukes i hovedsak til: o Mellomregning i kompliserte spørringer o Datagrunnlag for skjermbilder og applikasjonsprogrammer o Adgangskontroll OBS: Begrensede muligheter for oppdatering av virtuelle tabeller Opprette en virtuell tabell: Virtuelle tabeller i SQL CREATE OR REPLACE VIEW navn_på_virtuell_tabell AS SELECT... ; eller CREATE OR REPLACE VIEW navn_på_virtuell_tabell (attributtliste) AS SELECT... ; Fjerne en virtuell tabell: DROP VIEW navn_på_virtuell_tabell ; I den første CREATE-formen tas attributtnavnene fra SELECT-leddet I den andre formen velger vi attributtnavn selv INF102-sql-53 INF102-sql-54 Bruk av virtuelle tabeller Bruk av virtuelle tabeller (forts.) Vi oppretter en virtuell tabell: CREATE VIEW AvfallAkershus AS SELECT Kommunenr,Kommunenavn,Avfallsmengde WHERE Fylkenr = 02 ; Vi kan nå bruke den virtuelle tabellen: SELECT SUM(Avfallsmengde) FROM AvfallAkershus ; I standard SQL kan vi ikke bruke beregninger, bare attributtnavn i aggregeringsfunksjoner. En virtuell tabell bringer oss rundt denne begrensningen: CREATE VIEW AvfallPerInnbyggerView (beregnetavfallperinnbygger) AS SELECT (avfallsmengde*1000/innbyggertall) SELECT MAX(beregnetAvfallPerInnbygger) FROM AvfallPerInnbyggerView ; INF102-sql-55 INF102-sql-56
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
DetaljerUtvikling fra kjernen og ut
Utvikling fra kjernen og ut! inn ut Virkelighetsmodell Brukergrensesnitt Utviklingsretning Applikasjon Bruker Plattform Oppfatning av interesseområdet jfr. Systemutvikling Fra kjernen og ut, fra skallet
DetaljerUtvikling 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
DetaljerUtvikling 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
DetaljerSystemutvikling 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?
DetaljerSQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data
SQL Structured Query Language Definere tabeller Skranker Fylle tabeller med data Lage en tabell med SQL create table R (A 1 D 1 [S 1 ],... A n D n [S n ], [liste av skranker] R er navnet på relasjonen/tabellen
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. (forts.) Institutt for Informatikk. INF Ragnar Normann 1
UNIVERSITETET I OSLO SQL Structured Query Language (forts.) Institutt for Informatikk INF3100 7.2.2005 Ragnar Normann 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan være
DetaljerMetasprå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
Detaljer1. 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
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. (forts.) Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language (forts.) Institutt for Informatikk INF3100 11.2.2008 Ellen Munthe-Kaas 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan
DetaljerINF1300 SQL Structured Query Language del 1. Stoff som blir/ble forelest i oktober 2013
INF1300 SQL Structured Query Language del 1 Stoff som blir/ble forelest i oktober 2013 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where distinct order by SQLs manipulasjonsspråk Indekser
DetaljerOppgave: Finn navn og tittel på alle som har arbeidet på prosjektet «Vintersalg»
Skjema Prosjekt(PId, Pnavn, KId, Pleder, StartDato) Ansatt(AId, Navn, Tittel, Fdato, Pnr, AnsDato) Timeliste(AId, Dato, PId, Timer) Kunde(KId, Knavn, Adresse) Oppgave: Finn navn og tittel på alle som har
DetaljerDatamodellering 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
DetaljerUNIVERSITETET SQL. Structured Query Language (forts.) Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET IOSLO SQL Structured Query Language g (forts.) Institutt for Informatikk INF3100 9.2.2009 Ellen Munthe-Kaas 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan
DetaljerRepetisjon: Normalformer og SQL
IN2090 databaser og datamodellering Repetisjon: Normalformer og SQL Mathias Stang og Stein Michael Storleer 21. november 2018 1 Agenda Normalformer Funksjonelle avhengigheter Nøkler Finne hvilke normalformer
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) Institutt for Informatikk. INF Ragnar Normann 1
UNIVERSITETET I OSLO SQL Structured Query Language (The intergalactic dataspeak) Institutt for Informatikk INF3100 1.2.2005 Ragnar Normann 1 SQL SQL Structured Query Language er et deklarativt språk for
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: SQL SQLs spørrespråk: select-from-where distinct order by Indekser INF1300-15.10.2007 Ellen Munthe-Kaas 1 SQL The Intergalactic Dataspeak
DetaljerDatamodellering og databaser 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
DetaljerINF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning mandag 14.
INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning mandag 14. september 2009 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where
DetaljerUtvikling fra kjernen og ut
Utvikling fra kjernen og ut Informasjonssystem bygd på et databasehåndteringssystem Brukergrensesnitt! inn ut Oppfatning av interesseområdet Flere samtidige brukere gir databasehåndteringssystemet store
DetaljerINF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning onsdag 22.
INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning onsdag 22. september 2010 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where
DetaljerIntegritetsregler i SQL. Primærnøkler
Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler skranker på attributter og tupler Interrelasjonsskranker assertions Triggere INF212
DetaljerDatamodellering og databaser 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
DetaljerOppgaver Oppgave a: Sett opp mulige relasjoner
Løsningsforslag til øving 4: Relasjonsmodellen Kjell Toft Hansen 18.09.2008 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1: databaser Oppgaver Oppgave a: Sett opp
DetaljerRelasjoner terminologi
Relasjoner terminologi Kopi av lysark fra forelesningen 1. september. Dette er utdrag fra et notat som snart blir publisert. Dette notatet egner seg bedre til repetisjon og selvstudium enn disse arkene.
DetaljerSQL 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,
DetaljerIntegritetsregler i SQL
UNIVERSITETET I OSLO Integritetsregler i SQL INF3100 8.2.2005 Ragnar Normann 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: SQL SQLs definisjonsspråk SQLs spørrespråk: select-from-where distinct order by SQLs manipulasjonsspråk Indekser Filmdatabasen INF1300
DetaljerSQL Structured Query Language
SQL Structured Query Language Litt tabellterminologi Definere tabeller Fylle tabeller med data Hente data fra tabeller select-from-where distinct order by Relasjoner terminologi relasjonsnavn Personale
Detaljer1. 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
DetaljerDatabaser: Relasjonsmodellen, del I
LC238D http://www.aitel.hist.no/fag/_dmdb/ Databaser: Relasjonsmodellen, del I En relasjon er en matematisk mengde side 2 Egenskaper ved relasjoner side 3 Entitetsintegritet side 4-5 Referanseintegritet
DetaljerAlle attributter har NULL som mulig verdi. mulige verdier for integer: NULL, 0, 1, 2, 3...
NULL verdier Alle attributter har NULL som mulig verdi mulige verdier for integer: NULL, 0, 1, 2, 3... Dog mulig å lage tabeller med attributter som forbyr NULL Ulik bruk: manglende informasjon («vet ikke
DetaljerOppgave 1 (Opprett en database og en tabell)
Oppgave 1 (Opprett en database og en tabell) 1) I «Object Explorer» (i «SQL Server Management Studio»), høyreklikk over Databases : 1 2 2) Skriv så databasenavnet og klikk OK: 3) Plasser så kursoren på
DetaljerINF1300 Introduksjon til databaser: SQL Structured Query Language
INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning mandag 14. september 2009 SQL Structured Query Language SQL Structured Query Language er
DetaljerSensorveiledning for IN2090 og INF desember :30 18:30 (4 timer)
Sensorveiledning for IN2090 og INF1300 6. desember 2018 14:30 18:30 (4 timer) 1. Eksterne skranker (5%) I modellene nedenfor (ORM2) skal du anta at alle begreper har en unik representasjon. Er plasseringen
DetaljerINF1300 Introduksjon til databaser
INF1300 Introduksjon til databaser Data (transiente, persistente) DBMS databser informasjon interesseområdet informasjonsmodeller informasjonssystemer Transiente og persistente data Når vi programmerer,
DetaljerSQL Introduksjonskurs. Oversikt
SQL Introduksjonskurs Oversikt Oversikt 2/7 Introduksjon til datamodellering Normalisering Logisk skjema til Database Strukturelle operasjoner Operasjoner mot data Kontrolloperasjoner Aggregering og indekser
DetaljerSQL, del 1 - select. Hva er SQL?
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - select Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
DetaljerEn liten rekap. Spørrespråk. I dag SELECT
[Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hioa.no) 06/11-15 Databaser høsten 2015 En liten rekap ER-diagram - vi modellerer dataene våre til danne best mulig grunnlag for informasjonen
DetaljerINF1300 Det meste av resten av SQL. Utleggsark v. 2.0
INF1300 Det meste av resten av SQL Utleggsark v. 2.0 Dagens temaer Sammenligning med tekstmønstre Aggregeringsfunksjoner Nestede spørsmål Gruppering Relasjonssammenligninger: View JDBC exists in any all
DetaljerSkranker og avledninger
Figur 7-1. Skrankene skal gjenspeile virkelighetens regler Forretningsregler Virkeligheten (interesseområdet) Skranker og avledninger registrering påvirkning jfr. Fra kjernen og ut, fra skallet og inn
DetaljerIN2090 Databaser og datamodellering 07 Datamanipulering
IN2090 Databaser og datamodellering 07 Datamanipulering Leif Harald Karlsen leifhka@ifi.uio.no Universitetet i Oslo 1 / 43 Komplisert eksempel Finn kundenavn og productnavn på alle kunder som har bestilt
DetaljerIntegritetsregler i SQL
UNIVERSITETET I OSLO Integritetsregler i SQL Institutt for Informatikk INF3100 13.2.2007 Ellen Munthe-Kaas 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Det meste av resten av SQL Sammenligning med tekstmønstre Aggregeringsfunksjoner Gruppering Kvantorer Nestede spørsmål View JDBC INF1300
DetaljerLøsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer)
Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember 2018 14:30 18:30 (4 timer) 1. Eksterne skranker (5%) I modellene nedenfor (ORM2) skal
DetaljerINF1300 Det meste av resten av
INF1300 Det meste av resten av SQL Utleggsark v. 1.0 Tekstmønstre I SQL kan vi bruke like for å sammenligne et tekst-attributt med et tekstmønster Et tekstmønster er en tekstkonstant hvor to tegn, kalt
DetaljerEKSAMEN 6102 / 6102N DATABASER
EKSAMEN 6102 / 6102N DATABASER 06.12.2016 Tid: 4 timer (10-14) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål / nynorsk 13 (inkludert denne) Ingen Ingen Eksempeltabeller Sensuren finner du
DetaljerSQL Structured Query Language
SQL Structured Query Language Mer SQL: kandidat-, primær- og fremmednøkler Definere tabeller med integritetsregler Hente data fra tabeller select-from-where distinct order by Eksempler kjøres i PostgreSQL
DetaljerInstitutt for datateknikk. Fag TDT4145 Datamodellering og databasesystemer Løsningsforslag til øving 3: Algebra og SQL
NTNU Norges teknisk-naturvitenskapelige Universitet Institutt for datateknikk og informasjonsvitenskap Fag TDT4145 Datamodellering og databasesystemer Løsningsforslag til øving 3: Algebra og SQL Side 1
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Det meste av resten av SQL Sammenligning med tekstmønstre Aggregeringsfunksjoner Nestede spørsmål Gruppering Relasjonssammenligninger:
DetaljerSQL. SQL-standarder. Flere standarder: ANSI SQL SQL2 (SQL-92) SQL3 (SQL-99) = SQL2 + objekt-relasjonelle egenskaper mm
SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser Uttrykkskraften er omtrent som den i relasjonsalgebraen utvidet med tilleggsoperatorene SQL inneholder også
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language (The intergalactic dataspeak) Institutt for Informatikk INF3100 6.2.2005 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk
DetaljerSQL: Integritetsregler, triggere og views
UNIVERSITETET I OSLO SQL: Integritetsregler, triggere og views Institutt for Informatikk INF3100 14.2.2014 Ellen Munthe-Kaas 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet fremmednøkler
Detaljer1. Innføring i bruk av MySQL Query Browser
Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Innføring i bruk av MySQL Query Browser Kjell Toft Hansen 28.02.2007 Lærestoffet er utviklet for faget LV338D Databaseadministrasjon 1. Innføring
DetaljerDatabase 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)
DetaljerOppgave 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
DetaljerApplikasjonsutvikling med databaser
Applikasjonsutvikling med databaser Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 10.10.2011 October 12, 2011 1 / 24 Applikasjonsutvikling med databaser Databaser tilbyr
DetaljerDatabaser. - Introduksjon til SQL med Microsoft SQL Server - Olav Dæhli Databaser - høsten
Databaser - Introduksjon til SQL med Microsoft SQL Server - Olav Dæhli Databaser - høsten 2017 1 Innholdsfortegnelse 1. Introduksjon... 6 2. Tabeller... 7 2.1. Grunnleggende om tabeller... 7 2.2. Logisk
DetaljerDatabaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen
Databaser Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen Tema for dagen Relasjonsmodellen Hvorfor relasjoner? Fra ER diagram til relasjoner 22.09.2008
DetaljerSQL, del 1 - select. Hva er SQL?
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - select Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
DetaljerIN2090 Introduksjon til databaser
UNIVERSITETET I OSLO IN2090 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Hva er data? Hva er informasjon? Fra idé til informasjonssystem Litt om modellering: Begreper
DetaljerMiniverden 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-
DetaljerDatabaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen
Databaser Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen Tema for dagen Hva er relasjonsalgebra? Seleksjon Projeksjon Produkt Indre forening Ytterforening Settoperasjoner: union, snitt, differanse
DetaljerLC238D Datamodellering og databaser SQL, del 1 - SELECT
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - SELECT Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
DetaljerTabeller 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
DetaljerIN2090 Databaser og datamodellering 07 Datamanipulering
IN2090 Databaser og datamodellering 07 Datamanipulering Leif Harald Karlsen leifhka@ifi.uio.no Universitetet i Oslo 1 / 43 Komplisert eksempel Finn kundenavn og productnavn på alle kunder som har bestilt
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 3.2.2015 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
DetaljerDatamodellering med UML
Datamodellering med UML jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 (og litt fra kapittel 6 og 7) dmuml-1 Figur 5-1. Datamodellen dokumenterer vår oppfatning av virkeligheten
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 10.2.2014 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) INF Ellen Munthe-Kaas 1. Institutt for Informatikk
UNIVERSITETET I OSLO SQL Structured Query Language (The intergalactic dataspeak) Institutt for Informatikk INF3100 5.2.2008 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 2.2.2012 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
DetaljerSQL 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
DetaljerSQL: Datatyper m.m. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Datatyper m.m. V18 1 / 12
SQL: Datatyper m.m. Evgenij Thorstensen V18 Evgenij Thorstensen SQL: Datatyper m.m. V18 1 / 12 Datatyper, kort om mye Vi går en rask ekskursjon i manualen, Kap. 8. https://www.postgresql.org/docs/9.2/sql.html
DetaljerEKSAMEN. Kontroller at oppgavesettet er komplett før du begynner å besvare spørsmålene.
EKSAMEN Emnekode: Emne: ITF10306 Databaser Dato: 21.05.19 Eksamenstid: 09.00-13.00. Hjelpemidler: Syntaksoversikt (vedlagt oppgaven) Oppgavesettet består av 3 tekstoppgaver og en quizz. Vedlegget består
DetaljerUNIVERSITETET SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET IOSLO SQL Structured Query Language Institutt for Informatikk INF3100 8.2.2011 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
DetaljerSkranker og avledninger
Skranker og avledninger jfr. Fra kjernen og ut, fra skallet og inn kapittel 7 dmskranker&repr-1 Figur 7-1. Skrankene skal gjenspeile virkelighetens regler Forretningsregler Virkeligheten (interesseområdet)
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Data versus informasjon Beskrivelse av interesseområdet Begreper og representasjon av
DetaljerKomplisert eksempel. IN2090 Databaser og datamodellering 07 Datamanipulering. Flere eksempler: Kombinere aggregater. Komplisert eksempel med WITH
IN2090 Databaser og datamodellering 07 Datamanipulering Leif Harald Karlsen leifhka@ifi.uio.no Komplisert eksempel Finn kundenavn og productnavn på alle kunder som har bestilt en drikkevare som ikke lenger
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Data, databaser og databasehånteringssystemer Data versus informasjon Beskrivelse av interesseområdet 100%-prinsippet og det begrepsmessige
DetaljerDatamodellering med UML. Modellenes to formål. The Unified Modeling Language - UML
Figur 5-. Datamodellen dokumenterer vår oppfatning av virkeligheten Interesseområdet Datamodellering med UML registrering påvirkning jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel
DetaljerSQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks.
SQL og Mengdelære Oracle, MySQL, Access, bruker forskjellige syntaks. Kan vi beskrive, hva SQL er og hva man kan gjøre med SQL, uavhengig av konkret syntaks!!! Hvilke universale formelle språk har vi til
DetaljerHø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
DetaljerOlav Dæhli DATABASEUTVIKLING
Olav Dæhli DATABASEUTVIKLING Grunnleggende databaseteori, SQL-spørringer, databasemodellering og utvikling av applikasjoner med kobling mellom SQL Server og C#. erwin Entity/Relationship model C# SQL Server
DetaljerTilkobling 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
DetaljerThe Unified Modeling Language - UML
Datamodellering med UML jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 Modellenes to formål Interesseområdet Beskrivelse Oppfatningen av interesseområdet Foreskrivelse Informasjonssystem
DetaljerEksamen i IBE102 Webutvikling Våren 2017.
Avdeling for Logistikk Eksamen i IBE102 Webutvikling Våren 2017. Eksamensdag: 5. mai 2017 Tid: 9-13. Faglærer/tlf: Ketil Danielsen, 90619434 Hjelpemidler: Ingen. Antall sider, inkl. forsiden: 6 Målform:
DetaljerUNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 9.2.2010 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
DetaljerINF1300 Introduksjon til databaser
INF1300 Introduksjon til databaser INF1300 Introduksjon til databaser INF1300 Introduksjon til databaser INF1300 Introduksjon til databaser databaser data (transiente, persistente) informasjon interesseområdet
DetaljerEksamensoppgave 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
DetaljerUNIVERSITETET. triggere og views. Institutt for Informatikk. INF Arne Maus 1
UNIVERSITETET IOSLO SQL: Integritetsregler, triggere og views Institutt for Informatikk INF3100 28.2.2012 Arne Maus 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet fremmednøkler
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Informasjonsbærende referansemåter Resten av realiseringsalgoritmen Sterk realisering Realisering versus modellering INF1300-31.10.2016
DetaljerÅ bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter
Sortering og søking i Java-API-et Tabeller og Arraylister Comaparable Comparator equals() LC9D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc9d.php Høgskolen i Sør-Trøndelag,
DetaljerINF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Hva er data? Hva er informasjon? Fra idé til informasjonssystem Litt om modellering:
DetaljerHØ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
DetaljerMySQL-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.............................
DetaljerKort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon
Kort om meg INF1000 Uke 2 Variable, enkle datatyper og tilordning Fredrik Sørensen Kontor: Rom 4311-NR, Informatikkbygget Brukernavn/e-post: fredrso@ifi.uio.no Utdanning: Dataingeniør, 2000 Cand.Scient,
DetaljerTall. Binære regnestykker. Binære tall positive, negative heltall, flytende tall
Tall To måter å representere tall Som binær tekst Eksempel: '' i ISO 889-x og Unicode UTF-8 er U+ U+, altså Brukes eksempelvis ved innlesing og utskrift, i XML-dokumenter og i programmeringsspråket COBOL
DetaljerLøsningsforlag for oblig 1, databaser 2010
Løsningsforlag for oblig 1, databaser 2010 Oppgave 1 a) Hvilke supernøkler finnes i de to tabellene? Tabellen klasse har følgende supernøkler: (klasseid, klassebetegnelse) (klasseid) Tabellen renndeltager
DetaljerINF1300 Relasjonsalgebra. Et matematisk fundament for å forstå SQL-setninger
INF1300 Relasjonsalgebra Et matematisk fundament for å forstå SQL-setninger Innhold Relasjonsalgebraen Operatorene i relasjonsalgebraen Relasjonsalgebratolkning av select-setningen Kostbare operasjoner
DetaljerSELECT DISTINCT Fornavn, Etternavn, Programtittel FROM Program P, Medvirkende M, Deltagelse D. SELECT Tilgjengelighet FROM Program
[Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hioa.no) 10/11-15 DISTINCT Pregnante navn på kolonner Boolske operatorer: OR, NOT Beregningsfunksjoner og Gruppering NULL-verdier Maria
Detaljer