Procedural Language Extensions to SQL

Slides:



Advertisements
Samankaltaiset esitykset
Tuloksellinen Java-ohjelmointi Luku 3 Luokkien käyttäminen
Advertisements

Excel ja makrot Excel koostuu kahdesta eri osasta Alt+F11 VBA
Image Gallery JavaScriptin avulla Juha Konttinen 1.
Wikin pikaohje /ut. Kirjautuminen palveluun • Mene osoitteeseen valitse sivun oikeasta yläkulmasta ”Sign.
Suorita menulta voit ottaa yhteyden iSeries:iin tai katkaista yhteyden sinne ja poistua RI400:sta.
JavaScript (c) Irja & Reino Aarinen, 2007
VBA –ohjelmoinnin perusteet
© Jukka Harju, Jukka Juslin1 Java-ohjelmointi opas ammattimaiseen osaamiseen Luku 6 (osittain) Tiedostot.
Luku 5 – Tietojen hakeminen sovelluksiin
Julkaisukielet ja - tekniikat tMyn1 Julkaisukielet ja -tekniikat •Verkko-ohjelmointi voidaan jakaa kahteen osaan: asiakaspuolen ja palvelinpuolen ohjelmointiin.
C:\RI400 hakemistosta valitaan ExcelPDFConverter ja klikataan sitä.
Aggregaattifunktiot (1)
1 Taulukot. 2 Miten taulukoita tehdään n WYSIWYG-editorien työkalut n HTML [border]… n Excel etc. Save as html.
Taulukoiden määrittely, käsittely ja kopiointi Vaihtoehdot taulukoille
Rakenteinen ohjelmointi
DIS Jouni Javanainen Fennia Technical Club.
Tehtävä 3: PowerPoint Hans Laihia Hans Laihia.
Tehtävä 3: PowerPoint Mika Tuukkanen Mika T.
Sami Jantunen LTY/Tietotekniikan osasto
13. Hyvä ohjelmointitapa (osa 1)
© Jukka Harju, Jukka Juslin
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
Relaatioalgebra (1) Kokoelma relaatioiden käsittelyyn tarkoitettuja operaatioita Operaatiot muuntavat relaatioita uusiksi relaatioiksi Muodostaa perustan.
Erilaiset liitokset FROM-osassa voidaan määritellä relaatio myös erilaisia liitosoperaatioita käyttäen Vasen, oikea ja täysi puoliliitos eli ulkoliitos.
Monikon lisääminen (1) Luetellaan kaikki lisättävän rivin arvot INSERT INTO Asiakas VALUES (4, ’Assi’, ’Asiakas’); Luetellaan vain osa arvoista; muut arvot.
11. Javan toistorakenteet
4. Attribuutit 4.1. Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2.
Hyvä ohjelmointitapa (osa 2) Yleistä Lisää hyviä ohjelmointikäytäntöjä: − Jaa pitkä koodi osiin. − Käytä attribuutteja säästeliäästi.
Ohjelman keskeytys virhetilanteessa tMyn1 Ohjelman keskeytys virhetilanteessa Poikkeustilanteet voidaan ryhmitellä logiikkavirheisiin ja muihin ajonaikaisiin.
© Jukka Juslin1 Tiedostot Tuloksellinen Java-ohjelmointi.
Tässä on kokoelma kaikista 8lk:lla tekemistäni töistä.
Ohjelmointitaito (ict1td002, 12 op) Kevät 2008 Raine Kauppinen
Harjoitustyö 1. Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala2 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva.
4.2-Sulautettu SQL Teuhola Sulautettu (embedded) SQL Ohjelmointikielen (ns. isäntäkielen) laajennus ISO-standardi, määritelty kielille Ada,
FunktiottMyn1 Funktiot Funktiot voidaan jakaa –Kirjastofunktioihin, jotka ovat valmiina kaikkien käytössä. Erikoisempien kirjastofunktioiden käyttöönotto.
Poikkeustenkäsittely- lohkot tMyn1 Poikkeustenkäsittelylohkot try-catch Poikkeustilanteiden käsittelymekanismi toteutetaan varatuilla sanoilla try, throw.
DO NOT PRINT THIS DOCUMENT SQL -valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone.
Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto.
Visual Basic -ohjelmointi
Java - Tietokanta. JDBC=Java database connectivity  ODBC:n kaltainen ohjelmointiliittymä SQL- tietokantoihin  Koostuu Java-kehitysympäristön (esim.
Karteesinen tulo Huomaa attribuuttien nimien tarkentaminen taulujen nimillä.
Tehtävä 3: PowerPoint Anneli Tirkkonen 4/2/2015Anneli Tirkkonen1.
…Raportit kuosiin… Näin teet sivunumeroinnin ja sisällysluettelon
Ohjelmointi 1. toinen luento1 Taulukot n Kiinteät taulukot: alkioiden määrä tiedetään Dim intCount(12) As Integer 0 indeksit saavat arvoja 0-12 (Option.
Tietokannat -kurssi KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola.
Tietokannat -kurssi KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola.
Tietokannan hallinta Kevät 2006 Jan Lindström R&G Chapter 1.
1..toistolauseet While Wend For Each In [Exit For] Next.
Tietokantapalvelimet Ville Parviainen. Sisältö Yleistä tietokannoista SQL PostgreSQL MySQL MySQL vs. PostgreSQL Linux -työ.
Hakemistot Nopeuttavat hakuoperaatioita Hidastavat päivitysoperaatioita Pääavaimelle luodaan aina indeksi; päävain toimii usein hakukriteerinä Luodaan.
2/2001 Tietojärjestelmät ja Systeemisuunnittelu Luennoitsija: Tapio Lammi
.NET ohjelmointi C#-kielellä RäsSe, lokakuu 2004.
Copyright Oy Thomas Antila Consulting Ab 1 Indeksointi Oracle 8i tietokannassa OUGF Syksy 2000.
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op Assembler.
WAP-Sovellusten kehittäminen PL/SQL:llä Kimmo Seppänen Asio-Data Oy.
Turvallinen PHP-ohjelmointi Kohdat joihin tulee kiinnittää erityistä huomiota: Käyttäjän syöttötiedot Ohjelmistojen haavoittuvuudet Näkyvyys julkisuuteen:
Poikkeustenkäsittelylohkot try-catch
Click Start Search programs and file  region and language
7. Hyvä ohjelmointitapa..
Mikäli ääniyhteys koneen kautta ei toimi
Ohjelman keskeytys virhetilanteessa
3. Luokat, oliot ja metodit Java-kielessä (Lausekielinen ohjelmointi I ja II –kursseilla opitun kertausta.)
Tilannekatsaus Tietovarastofoorumi – CSC
14. Hyvä ohjelmointitapa.
Jouni Javanainen Fennia Technical Club
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö
5. HelloWorld-ohjelma.
CLT132 Tehtävät (viikko 5).
CLT132 Tehtävät (viikko 4).
Esityksen transkriptio:

Procedural Language Extensions to SQL PL/SQL Procedural Language Extensions to SQL Kimmo Seppänen PL/SQL

Mikä PL/SQL on? Rakenteellinen ohjelmointikieli joka pohjautuu suoraan SQL:ään Tallennetaan ja ajetaan suoraan tietokannan sisällä Komponentteja voidaan kierrättää ja käyttää useissa eri Oraclen tuotteissa Kimmo Seppänen PL/SQL

Miksi PL/SQL? Helppo oppia Komponentit kierrätettäviä Tuettu Oracle 7:stä eteenpäin Nopea Kimmo Seppänen PL/SQL

Vihjelista: Tee näin, Osa 1 Keskitä virhekäsittely yhteen packageen Tee paikallisia (proceduren sisäisiä) funktioita toistuvia käskysarjoja varten Pidä funktiot ja proceduret lyhyinä Käytä ankkuroituja muuttujatyyppejä Käytä ennemmin procedureja kuin kirjoitat SQL:ää suoraan koodin sekaan Kimmo Seppänen PL/SQL

Vihjelista: Tee näin, Osa 2 Käytä overloading-ominaisuutta hyväksesi Käytä kursoreita ennemmin kuin suoraa SQL:ää (esim. select into-sijaan) Tee yhdellä “flagilla” toimiva debuggaus-mode, joka tulostaa välitietoja ohjelman etenemisestä (esim. dbms_output.put_line) Pidä pakettien määritykset eri tiedostoissa kuin pakettien body Kimmo Seppänen PL/SQL

Vihjelista: Älä tee näin, Osa 1 Älä hardkoodaa mitään, käytä joko globaaleja muuttujia tai hae arvot kannasta Älä käytä exception-haaraa muuhun kuin virhekäsittelyyn Vältä funktioiden sivuvaikutuksia, esim. kantamuutoksia tai interaktiivisuutta vaativia osia Kimmo Seppänen PL/SQL

Vihjelista: Älä tee näin, Osa 2 Älä poistu loopista exit when-komennolla, ne saattavat johtaa ikilooppeihin Älä määrittele for-loopin indeksimuuttujaa (declare i number; for i in (select * from …) Varo nimeämästä muuttujia tai procedureja samoilla nimillä kuin kannan taulut tai sarakkeet Kimmo Seppänen PL/SQL

Tehtävänä tuoda ilmi ja tehostaa koodin loogista rakennetta. Asettelu Tehtävänä tuoda ilmi ja tehostaa koodin loogista rakennetta. Kimmo Seppänen PL/SQL

Nimeäminen Vähentää kommentoinnin tarvetta Funktiot: kuvaus_palautetusta_arvosta esim. palkat_yhteensa Proceduret: verbi_kohde esim. laske_liikevaihto Parametrien etu- ja takaliitteet Älä käytä liian lyhyitä nimiä Kimmo Seppänen PL/SQL

Kommentointi Tee samalla kun koodaat Erityisen tärkeää vaikeissa / huonosti koodatuissa kohdissa Hyvä nimeämiskäytäntö on osa kommentointia Selitä miksi, ei miten: rivi := rivi + 6; --kasvatetaan riviä 6:lla rivi := rivi + 6; --otsikon viemä tila Kimmo Seppänen PL/SQL

JAVA-kutsut PL/SQL:stä Käännä JAVA-ohjelmat ja lataa ne tietokantaan Luo käyttäjälle oikeudet suorittaa JAVA-kutsuja Rakenna JAVA-kutsun ympärille PL/SQL wrapperi, jonka omistaa JAVA-kutsujen omistaja Kimmo Seppänen PL/SQL

PL/SQL wrapperi JAVA-kutsuun CREATE OR REPLACE FUNCTION fDelete( file IN VARCHAR2) RETURN NUMBER AS LANGUAGE JAVA NAME ‘Jdelete.delete ( java.lang.String) return int’; / Kimmo Seppänen PL/SQL