1. Introduksjon til Oracle Express Edition



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

Datamodellering og databaser SQL, del 2

1. Innføring i bruk av MySQL Query Browser

SQL 3: Opprette tabeller, datainnsetting og utsnitt

Oppgave 1 (Opprett en database og en tabell)

Eksamen i IBE102 Webutvikling Våren 2017.

Datamodellering og databaser SQL, del 2

1. SQL datadefinisjon og manipulering

Datamodellering og databaser SQL, del 2

1. Kontrollstrukturer og løkker

1. Designe ER-modeller med MS Visio

I denne leksjonen skal se på hvordan vi bruker innebygde og brukerdefinerte funksjoner.

SQL. ISO SQL-standardene. Structured Query Language. Bruk av SQL. En innledende kommentar SQL-89 SQL-92 SQL:1999

Metaspråket for å beskrive grammatikk

Tilkobling og Triggere

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19

Oppgaver Oppgave a: Sett opp mulige relasjoner

Før du starter, del 2

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer)

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

Systemutvikling fra kjernen og ut, fra skallet og inn

Databaseadministrasjon

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang

Er du allerede har registrert brukernavn og passord, kan du logge deg på og få tilgang til tidligere opplastede filer (og filterinstillinger).

6105 Windows Server og datanett

>>12 Arbeide med MySQL

Konverteringsveiledning

I denne leksjonen skal se på hvordan vi bruker innebygde og brukerdefinerte funksjoner.

Eksamen i Internetteknologi Fagkode: IVA1379

Utvikling fra kjernen og ut

2. Beskrivelse av installasjon av SQL Server 2005 og hvordan lage databasen som trengs av administrasjonsprogrammet:

Databaser kort intro. Tom Heine Nätt

Opus Dental 7.1 Oppdateringsveiledning

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

IMS Intelligent MediaServer Desktop Upload Tool

Programvare som installeres Følgende tre programmer benyttes til oppgraderingen og kan lastes ned fra

6105 Windows Server og datanett

SPSS Høgskolen i Innlandet

Installasjonsveiledning

Kjøre Wordpress på OSX

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

Publisering av statiske og dynamiske websider til klasserom.net fra Dreamweaver og MySQL

Datamann Informasjonssystemer

PRINTER DRIVER ADMINISTRATOR GUIDE

Installasjonsveiledning PowerOffice SQL

Guide til system for flervalgsprøver

Sikkerhet og tilgangskontroll i RDBMS-er

Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen

Oppgave #1 Tablespacer, Tabeller, Indexer, og Brukere

SQL: Datatyper m.m. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Datatyper m.m. V18 1 / 12

Phone Assistant. Arne-Jørgen Auberg

Bruke SQL fra Python. Med Psycopg2

SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017.

Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services

Installasjonsveiledning

Lønn 5.0. Veiledning for ASP leverandører

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

Scan Secure GTS PAS

Om verktøyet. Installering av MySQL Migration Toolkit. Installer toolkitet. Brukerveiledning til Intelligent Converters MySQL Migration Toolkit

Brukerveiledning digital eksamen via WISEflow

BEGYNNERKURS I SPSS. Anne Schad Bergsaker 26. april 2018

Netctrl 2.0. Innhold. I dette dokumentet er den nye funksjonaliteten beskrevet.

MySQL. Historikk. Nedlasting og installasjon

Aditro AS. Produktnotat Huldt & Lillevik Ansattportal Ansattportal. Versjon (286) Copyright 2014 Aditro Side 1

1. MSI fra Group Policy

Gå til Nedlastninger på menylinjen for Visma Skolelisens og velg Visma Lønn versjon 9.5.

Huldt & Lillevik Lønn 5.0. Installere systemet

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

EKSAMEN 6102 / 6102N DATABASER

1. Profiler og variabler

SQL Server guide til e-lector

Oppgradering/installasjon av nye versjoner av ISY Park

Huldt & Lillevik Lønn 5.0. Installere systemet

Installasjon enbruker

BEGYNNERKURS I SPSS. Anne Schad Bergsaker 12. februar 2019

HØGSKOLEN I SØR-TRØNDELAG

Oppdatering av Extensor 05

Din verktøykasse for anbud og prosjekt

IN2090 Databaser og datamodellering 07 Datamanipulering

>>21 Datamodellering i MySQL Workbench

TDT4300 Datavarehus og datagruvedri3, Våren 2014

Art & Architecture Complete

To dagers sikkerhet...

Huldt & Lillevik Reise. Oppgradering. Aditro HRM AS

Ekvivalente stier (Equivalence of Path, EOP) i storm

6105 Windows Server og datanett

DATAØVING 1 INTRODUKSJON TIL STATA I

Bruksanvisning for Testadmin

Sensorveiledning for IN2090 og INF desember :30 18:30 (4 timer)

Brukerveiledning Custodis Backup Basic Epost:

BRUKERMANUAL GOSTUDYIT.COM

UNIVERSITETET SQL. Structured Query Language (forts.) Institutt for Informatikk. INF Ellen Munthe-Kaas 1

Applikasjonsutvikling med databaser

HR analysen. Ny versjon Brukermal. Administratorer

Telsys e-post Brukermanual

Hvordan designe en ER-modell med MS-VISIO

KPS kontaktdatase Driftsveiledning

BRUKERMANUAL. Telsys Online Backup

Huldt & Lillevik Ansattportal Ansattportal. Versjon

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

Transkript:

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 Express Edition. Vi skal vise hvordan du logger deg på, åpner script og bruker noen enkle datakatalogkommandoer (eng. Data Dictionary). Innhold 1. INTRODUKSJON TIL ORACLE EXPRESS EDITION... 1 1.1. STARTE ORACLE XE... 1 1.1.1. Skrive PL/SQL-program... 3 1.2. LASTE INN SQL-SCRIPT... 4 1.3. DATAKATALOGEN... 6 1.1. Starte Oracle XE Etter å ha installert Oracle XE på vår maskin, følger vi følgende sti for å finne XE: Start->Alle programmer-> Oracle Database 10g Express Edition->Got To Database Home Page Etter å ha trykt på Go To Database Home Page, får vi opp skjermbildet som er vist på figur 1. Figur 1. Skjermbilde for innlogging

Her skriver vi inn brukernavn og passord for systemansvarlig som vi fikk tilgang til ved installeringen av Oracle XE. Etter at vi har skrevet inn parametrene, trykker vi på Login-knappen. Da vil vi få opp skjermbildet som er vist på figur 2. Figur 2. Oppstart Det første vi må gjøre er å opprette en egen bruker for dette kurset som er forskjellig fra administrator (som har brukernavn sys/system). Det gjør vi ved å velge ikonet Administration. Deretter får vi opp skjermbildet som er vist på figur 3. Figur 3. Opprett ny bruker Her skriver vi inn brukernavn og passord på den nye brukeren og får tildelt rollene CONNECT og RESOURCE som gir oss automatisk tilgang til rettighetene som er nevnt under Direct Grant System Privileges. Så trykker vi knappen Create. side 2 av 11

Dette får vi bekreftet som vist på figur 4. Figur 4. Bekreftelse på at bruker er opprettet Ved å trykke på ikonet som symboliserer den nye brukeren, kan vi slette og endre på rollene/rettighetene til den nye brukeren. Neste skritt blir å logge seg ut som administrator og logge seg på ved å bruke brukernavn og passord til vår nylig opprettete bruker for dette kurset. Figur 5. Oppstart 1.1.1. Skrive PL/SQL-program Hvis vi nå skal skrive et PL/SQL-program eller SQL-spørringer må vi velge SQL-ikonet. Da får du opp skjermbildet som er vist på figur 6 Figur 6. SQL Her kan vi enten velge ikonet for å skrive SQL-spørringer (SQL Commands) eller ikonet for å laste inn ferdigskrevet SQL-script (SQL Scripts) på tekstfilformat. I vårt tilfelle skal vi velge ikonet SQL Scripts fordi vi skal laste inn de ferdigskrevne scriptene sql-script01.txt og sql-script02.txt for å få et datagrunnlag til å gjøre øvinger og å kjøre eksemplene som er vist i leksjonene. side 3 av 11

1.2. Laste inn SQL-script Scriptene inneholder opprettelsen av tabeller med integritetsregler og innlegging av data. Istedenfor å kjøre hver enkelt SQL-spørring, som kan være tidkrevende, kjører vi hele scriptet ved å velge ikonet SQL Script. Deretter skriver inn parametrene som er vist på figur 7. Dvs. stien til scriptet, det lokale navnet vi vil gi scriptet og tegnsettet. Figur 7. Kjøring av scriptet sql-script01.txt Vi trykker deretter knappen Upload. For å laste inn flere script etter hverandre må vi logge osss ut og inn mellom hver kjøring av scriptene. Skjermbildet på figur 8 bekrefter at et scriptet fra figur 7 er kjørt og lastet inn. Figur 8. Bekreftelse på innlasting av script Deretter må vi dobbeltklikke på ikonet for scriptet. Da får vi opp skjermbildet som er vist på figur 9. Figur 9. Innlastet script Nå må vi velge knappen Run for å kjøre scriptet slik at tabellene blir opprettet og at data deretter blir lagt inn i tabellene. side 4 av 11

Figur 10. Scriptet er klar til å bli kjørt Vi velger Run på nytt igjen og får fram skjermbildet som er vist på figur 11. Figur 11. Scriptet er klargjort Vi trykker deretter på Script i menylinjen (grønn skrift) og vi får fullført kjøringen av scriptet. Figur 12. Scriptet har blitt kjørt side 5 av 11

1.3. Datakatalogen Datakatalogen er et nyttig redskap når du skal se nærmere på metadata. I Oracle XE kan vi bruke SQL (ikonet SQL Commands) til å kjøre SQL-spørringer mot datakatalogen (eng. Data Dictionary). For å kjøre mange av datakatalogspørringene i dette kapittelet må vi være pålogget som administrator (brukernavn sys/system). For å se navnene på de tabellene som scriptene har opprettet, skriver vi følgende SQLspørring: SELECT TABLE_NAME FROM USER_TABLES; TABLE_NAME LEVINFO LEVERANSE LEVERANDOR PRODUKT DELINFO ORDREHODE ORDREDETALJ PRISINFO 8 rows returned in 0,43 seconds Hvis vi ønsker å se all informasjon om tabellene som vi har opprettet, skriver vi følgende SQL-spørring: SELECT * FROM USER_TABLES; Resultattabellen av spørringen blir som følger: Dette er bare et utdrag av attributtene (kolonnene) i datakatalogtabellen USER_TABLES. Vi kan også bruke prefikset ALL til å få ut noen av de samme data, men da må vi foreta en restriksjon (for eksempel for én bestemt bruker) som vist i følgende SQL-spørring: SELECT table_name FROM ALL_TABLES WHERE OWNER = 'KTHA'; side 6 av 11

Resultattabellen blir: LEVINFO LEVERANSE TABLE_NAME LEVERANDOR PRODUKT DELINFO ORDREHODE ORDREDETALJ PRISINFO 8 rows returned in 0,94 seconds Vi kan også skrive en SQL-spørring som finner attributtnavn og datatyper til en gitt tabell. I vårt eksempel til tabellen Delinfo: SELECT COLUMN_NAME, CHAR_LENGTH, DATA_TYPE FROM USER_TAB_COLUMNS WHERE TABLE_NAME ='DELINFO'; COLUMN_NAME CHAR_LENGTH DATA_TYPE DELNR 0 NUMBER BESKRIVELSE 30 VARCHAR2 2 rows returned in 0,21 seconds Vi kan også skrive følgende SQL-spørring for å se metadata i samme tabell: DESC delinfo; Resultattabellen blir: Table Column Data Type Length Precision Scale Primary Key Nullable Default Comment DELINFO DELNR Number - - 0 1 - - - BESKRIVELSE Varchar2 30 - - - - - 1-2 Følgende spørring lister ut alle brukerne i databasen: SELECT USERNAME FROM ALL_USERS; side 7 av 11

KTHA KJELLHA FLOWS_020100 FLOWS_FILES HR MDSYS ANONYMOUS XDB CTXSYS DBSNMP USERNAME More than 10 rows available. Increase rows selector to view more rows. Prefikset DBA gir en resultattabell som viser informasjon om objekter fra hele databasen. Her er det nødvendig å ha tilhørende DBA-rettighet. Følgende spørring viser alle brukernes objekter i hele databasen: SELECT * FROM DBA_TABLES; Resultattabellen her er bare et utsnitt og viser ikke alle attributtene. Følgende spørring viser statusen til en brukerkonto: SELECT ACCOUNT_STATUS, CREATED, PROFILE, LOCK_DATE FROM DBA_USERS WHERE USERNAME = 'KTHA'; ACCOUNT_STATUS CREATED PROFILE LOCK_DATE OPEN 25.08.2009 DEFAULT - 1 rows returned in 0,02 seconds For å finne ut hvilke systemrettigheter brukeren har, må vi skrive følgende SQL-spørring: SELECT DISTINCT PRIVILEGE FROM DBA_SYS_PRIVS; side 8 av 11

PRIVILEGE ADMINISTER ANY SQL TUNING SET EXECUTE ANY LIBRARY CREATE ANY LIBRARY CREATE JOB UNLIMITED TABLESPACE ALTER ANY RULE SET DROP ANY MATERIALIZED VIEW DROP ANY DIRECTORY CREATE MATERIALIZED VIEW DROP PROFILE More than 10 rows available. Increase rows selector to view more rows. 10 rows returned in 0,11 seconds I dette tilfellet er brukeren DBA og har de rettighetene som resultattabellen viser. Det er ikke uvanlig at brukeren oppretter en rekke integritetsregler. Disse er lagret i tabellen User_constraints. For å finne ut hvilke attributter denne datakatalogtabellen har, kan vi skrive følgende spørring: DESC USER_CONSTRAINTS; Nå kan vi også finne ut hvilke integritetsregler som ligger på brukerens område ved å skrive følgende spørring: SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME FROM USER_CONSTRAINTS; side 9 av 11

CONSTRAINT_NAME CONSTRAINT_TYPE TABLE_NAME PRISINFO_FK2 R PRISINFO ORDREDETALJ_FK2 R ORDREDETALJ ORDREDETALJ_FK1 R ORDREDETALJ ORDREHODE_FK R ORDREHODE SYS_C004303 C PRISINFO SYS_C004302 C PRISINFO SYS_C004300 C ORDREDETALJ SYS_C004299 C ORDREDETALJ SYS_C004297 C ORDREHODE SYS_C004295 C LEVINFO More than 10 rows available. Increase rows selector to view more rows. 10 rows returned in 0,51 seconds Vi kan også jobbe med statistikker. Følgende er et eksempel på hvordan vi kan lage en SQLspørring som finner gjennomsnittsverdier: ANALYZE TABLE levinfo COMPUTE STATISTICS; SELECT NUM_ROWS * AVG_ROW_LEN FROM USER_TABLES WHERE TABLE_NAME = 'LEVINFO'; Resultattabellen av spørringen blir: NUM_ROWS*AVG_ROW_LEN 312 1 rows returned in 0,05 seconds Systemtabellen Dictionary inneholder en oversikt over alle tabeller. Vi kan bruke den til for eksempel å telle hvor mange tabeller som begynner med prefikset ALL: SELECT COUNT(*) FROM DICT WHERE TABLE_NAME LIKE 'ALL%'; Resultattabellen blir i vårt tilfelle: COUNT(*) 254 1 rows returned in 0,14 seconds Vi kan også hente ut beskrivelsen til denne systemtabellen ved å bruke kommandoen Dict: DESC DICT; side 10 av 11

Resultattabellen blir: Table Column Data Type Length Precision Scale Primary Key Nullable Default Comment DICTIONARY TABLE_NAME Varchar2 30 - - - - COMMENTS Varchar2 4000 - - - - Name of the object Text comment on the object 1-2 Ulike brukere kan tildeles ulike CPU-ressurser og prioriteter. Ved bruk av disse kommandoene kan vi kontrollere at brukere alltid har tilgjengelige CPU-ressurser. Ved følgende spørring kan vi for eksempel se på hvem som styrer ressursbruken: SELECT * FROM DBA_RSRC_MANAGER_SYSTEM_PRIVS; Resultattabellen kan se slik ut: GRANTEE PRIVILEGE ADMIN_OPTION DBA ADMINISTER RESOURCE MANAGER YES EXP_FULL_DATABASE ADMINISTER RESOURCE MANAGER NO IMP_FULL_DATABASE ADMINISTER RESOURCE MANAGER NO 3 rows returned in 0,09 seconds side 11 av 11