ORACLE PL/SQL Cursors Μέρος 1.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΕΡΩΤΗΜΑΤΑ ΕΠΙΛΟΓΗΣ ΜΑΘΗΜΑ 6. SELECTSELECT SELECT * FROM όνομα_πίνακα ; • Με τη εντολή SELECT ανασύρουμε δεδομένα από την βάση δεδομένων. • Το αστεράκι.
Advertisements

1 Copyright © 2006 Quality & Reliability SQL 1-2.
Γλώσσες για ημι-δομημένα δεδομένα (ΗΔΔ)  XPath  XQuery  XSLT (eXtensible Stylesheet Language for Transformations)
Μάθημα : Βασικά Στοιχεία της Γλώσσας Java
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
PL/SQL.
Αποθηκευμένες Διαδικασίες και Εναύσματα Δρ. Παναγιώτης Συμεωνίδης.
Πληροφοριακά Συστήματα και Βάσεις Δεδομένων
JAVA και SQL Δαμιανός Χατζηαντωνίου
Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων.
Entity-Relationship Παραδείγματα Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Φροντιστήριο 1 Δαμιανός Χατζηαντωνίου.
ΗΜΥ 100 Εισαγωγή στην Τεχνολογία 7 Νοεμβρίου 2008 Στυλιανή Πετρούδη ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ.
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
ΒΡΟΧΟΙ ΜΑΘΗΜΑ 5. ΒΡΟΧΟΙΒΡΟΧΟΙ Ο Βρόχος (loop) αποτελείται από προτάσεις επανάληψης. Οι προτάσεις επανάληψης είναι οι προτάσεις που επαναλαμβάνουν ένα.
Προγραμματισμός PASCAL
ORACLE PL/SQL Records. Εγγραφές (Records) DECLARE TYPE t_Rec1Type IS RECORD ( Field1 NUMBER, Field2 VARCHAR2(5)); TYPE t_Rec2Type IS RECORD ( Field1 NUMBER,
ORACLE PL/SQL Εξαιρέσεις Exceptions. ΟΡΙΣΜΟΣ Μια εξαίρεση (exception) είναι ένας δείκτης που ενεργοποιείται κατά την εκτέλεση του προγράμματος.
Βάσεις Δεδομένων Εργαστήριο ΙΙI Τμήμα Πληροφορικής ΑΠΘ
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Διασύνδεση Java Εφαρμογών με ΒΔ Π. Φιτσιλής 1.
ORACLE PL/SQL Άρης Στουγιαννίδης. ΒΡΟΧΟΣ ΜΕ ΜΕΤΡΗΤΗ FOR REM forloop.sql REM This is an example of a FOR loop. BEGIN FOR v_Counter IN LOOP INSERT.
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΤΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ ΓΛΩΣΣΑΣ PASCAL ΠΑΡΟΥΣΙΑΣΗ ΠΑΡΑΔΕΙΓΜΑΤΟΣ: ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΜΕ ΤΙΣ ΤΡΕΙΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Copyright © 2006 – Quality & Reliability SA PL/SQL TRIGGERS ΜΕΡΟΣ 1.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
Τεχνολογία ΛογισμικούSlide 1 Σχεδιασμός Λογισμικού ATM loop Print_input_message (” Welcome - Please enter your card”) ; exit when Card_input ; end loop.
ΕΠΛ 342 – Βάσεις Δεδομένων Εργαστήριο 4 ο SQL - Queries Ιωάννα Συρίμη
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
Οι εντολές επανάληψης Σε πολλά προβλήματα απαιτείται η επανάληψη ενός συνόλου ενεργειών προκειμένου να λυθεί το πρόβλημα. Θα αναφέρουμε δύο χαρακτηριστικά.
Βάσεις Δεδομένων I (Θ) Ενότητα 11: Ενιαίο παράδειγμα σχεδίασης σχεσιακής βάσης δεδομένων και υλοποίησης με Γλώσσα SQL Χ. Σκουρλάς Τμήμα Μηχανικών Πληροφορικής.
1. 1.Δημιουργία Νέου Αρχείου Επιλέγουμε καρτέλα File, πατούμε στην εντολή New και μετα αφου διαλέξουμε τον τύπo αρχείου (π.χ Blank Document), πατούμε.
Βάσεις Δεδομένων II (Θ) Ενότητα 6: Τεχνολογία PL/SQL - cursors Χ. Σκουρλάς Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Το.
ORACLE PL/SQL Cursors Μέρος 2. Cursors 2 Cursors με παραμέτρους Εισαγωγή παραμέτρου κατά την εκτέλεση Πολλά ανοίγματα με διαφορετικές παραμέτρους.
Βάσεις Δεδομένων I (Θ) Ενότητα 8: Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων Χ. Σκουρλάς Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά Μαθήματα.
Βάσεις Δεδομένων I Ενότητα 8: Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων Χ. Σκουρλάς Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Το περιεχόμενο.
Η καθημερινή ζωή στο Βυζάντιο Εργασία της μαθήτριας: Τζένη Αλουσάι στο μάθημα της Ιστορίας ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΗΤΡΙΑ:κα.Τσαούση.
Ε ΙΣΑΓΩΓΉ Σ ΤΟΥΣ Μ ΟΝΟΔΙΑΣΤΑΤΟΥΣ Π ΊΝΑΚΕΣ Αστρινάκη Μαρία.
Βάσεις Δεδομένων Κεφ. 1 Πλεονεκτήματα Β.Δ. έναντι αρχείων Βασικές λειτουργίες Β.Δ. Εφαρμογές Β.Δ. στην καθημερινή ζωή.
Επανάληψη και λυμένα θέματα του μαθήματος «Βάσεις Δεδομένων ΙΙ» για τη διδασκαλία του στo Τμήμα Πληροφορικής του ΤΕΙ Αθήνας. Διδάσκων: Χ. Σκουρλάς,
Περιγραφή Ενότητας Σκοπός του μαθήματος είναι να παρουσιάσει τις απαραίτητες έννοιες ώστε οι φοιτητές να κατανοήσουν την τεχνολογία των βάσεων δεδοµένων.
Βάσεις Δεδομένων Ι 4η διάλεξη
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη.
Σύντομη περιγραφή Μια περιήγηση σε αφυπνιζόμενα προγράμματα (triggers), δηλαδή προγράμματα ενεργοποιούμενα από ενέργειες INSERT, UPDATE, DELETE στη βάση.
Περιγραφή Ενότητας Σκοπός του μαθήματος αυτού και κεντρικός σκοπός του μαθήματος των Βάσεων Δεδομένων Ι είναι η παρουσίαση των απαραίτητων εννοιών ώστε.
Σκοπός Μαθήματος Σκοπός: Παρουσιάζεται η διαχείριση βάσης δεδομένων με γλώσσα SQL, χρήση JDBC API, και τεχνολογίας JSP pages και λογισμικού mySQL. Στόχος.
Java DataBase Connectivity
Βάσεις Δεδομένων Ενότητα 3: Σχεσιακή Άλγεβρα Βασίλης Βουτσινάς
Εφαρμογές Υπολογιστών
Ενισχυτική διδασκαλία
ΠΑΙΔΑΓΩΓΙΚΟ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ εκπαιδευτικη πολιτικη μιντζα νικολετα-μαρια (3170) στ’ εξαμηνο Η ΕΚΠΑΙΔΕΥΤΙΚΗ.
Βάσεις Δεδομένων και web-based Εφαρμογές
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
DREMEL: Interactive Analysis of Web-Scale Datasets
Περιγραφή Ενότητας Σκοπός του μαθήματος είναι η παρουσίαση των απαραίτητων εννοιών αλλά και των δηλώσεων SQL ώστε οι φοιτητές να κατανοήσουν σε κάποιο.
Ενότητα 2 : Το σύστημα βάσεων δεδομένων MySQL (II) Ιωάννης Τσούλος
ΠΡΟΛΟΓΟΣ.
Βάσεις Δεδομένων και web-based Εφαρμογές
ΓΛΩΣΣΕΣ & ΕΡΓΑΛΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας
Η στήριξη και η κίνηση στους ζωικούς οργανισμούς
Η Κωνσταντινα και οι αραχνεσ τησ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Βάσεις Δεδομένων ΙΙ Ενότητα 6: Τεχνολογία PL/SQL - cursors Χ. Σκουρλάς
Σχεσιακεσ βασεισ δεδομενων
Ερωτήματα Επιλογής σε ACCESS
Ερωτήματα Επιλογής σε ACCESS
Εισαγωγή στον αλγεβρικό λογισμό
ΠΑΡΑΔΕΙΓΜΑΤΑ SQL.
Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Δυτικής Αττικής
Μεταγράφημα παρουσίασης:

ORACLE PL/SQL Cursors Μέρος 1

ΟΡΙΣΜΟΣ Είναι ένας μηχανισμός με τον οποίο ονομάζουμε μια εντολή SELECT και διαχειριζόμαστε ξεχωριστά (ανά εγγραφή) τις πληροφορίες που η εντολή επιλέγει.

Σύνταξη Ρητών Cursors Σκοπός Να χρησιμοποιούμε μεταβλητές PL/SQL τύπου Record Να γράφουμε βρόχους με Cursors

Για τους Cursors Κάθε εντολή SQL που εκτελείται απο τον Oracle Server έχει ενα ξεχωριστό Cursor συνδυασμένο με αυτήν. Έτσι έχουμε: άρρητους (implicit) Cursors που δηλώνονται απο το σύστημα για κάθε DML & SELECT και ρητούς (explicit) Cursors που δηλώνονται απο τον προγραμματιστή.

Λειτουργία των ρητών Cursors

Έλεγχος των ρητών Cursors

Δήλωση του ρητού Cursor CURSOR cursor_name IS select_statement; Χωρίς ΙΝΤΟ Δεκτό το ORDER BY

Παράδειγμα Δήλωσης Cursor DECLARE CURSOR emp_cursor IS SELECT empno, ename FROM emp; BEGIN …………..

Άνοιγμα Cursor Σύνταξη: ΟΡΕΝ Cursor_name Απαραίτητο για να εκτελεσθεί το ερώτημα και να ανεβρεθεί το ενεργό σύνολο εγγραφών. Αν δεν ανεβρεθούν γραμμές δεν δημιουργείται συνθήκη εξαίρεσης Ο έλεγχος γίνεται μετά το FETCH.

Ανάκτηση Δεδομένων απο τον Cursor Σύνταξη: FETCH Cursor_name INTO [variable1,variable2, …| record_name] ;. Οι στήλες και οι μεταβλητές πρέπει να συμπίπτουν ως προς την σειρά και τον τύπο. Δεν δημιουργείται κατάσταση λάθους αν τελειώσουν οι γραμμές.

Ανάκτηση Δεδομένων απο τον Cursor -Παραδείγματα PL/SQL Developer Templates

Κλείσιμο του Cursor Σύνταξη: CLOSE Cursor_name Κλείσιμο μετά την επεξεργασία όλων των γραμμών Μετά το close δεν εκτελείται κανένα fetch Μπορούμε να ανοίξουμε ξανά τον Cursor

CURSOR STATUS %ISOPEN %NOTFOUND %FOUND %ROWCOUNT

Έλεγχος επαναλαμβανόμενων Ανακτήσεων Χρήση Βρόχου (Άρρητα OPEN και CLOSE) Fetch σε κάθε επανάληψη %NOTFOUND για έλεγχο Έλεγχος του STATUS.

Βρόχοι CURSOR με Υποερωτήματα Δεν Δηλώνονται OPEN & CLOSE.

Παράδειγμα BEGIN FOR emp_record IN (SELECT ename, deptno FROM emp) LOOP -- implicit OPEN …….. END LOOP; -- implicit CLOSE END;