PLSQL 1.1 LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture.

Slides:



Advertisements
Presentazioni simili
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Advertisements

Sicurezza e concorrenza nelle basi di dati
Stored Procedure Function Trigger
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
Type Checking (1° parte)
1 Strutture dati nel supporto a run time. 2 Entità presenti quando un programma va in esecuzione §programmi dutente (compilati) §routines del supporto.
Biglietti: schema E/R.
1 Biglietti: schema E/R. 2 Biglietti: albero degli attributi.
Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione.
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Database nel Web Modulo Didattico: Francesca Platania
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Base di dati Insieme organizzato di dati utilizzati per lo svolgimento delle attività di un ente, azienda, ufficio, persona Es.: elenchi telefonici, elenco.
SQL Structured Query Language
19/01/2014 Viste. 19/01/2014 Viste Le Viste Logiche o Viste o View possono essere definite come delle tabelle virtuali, i cui dati sono riaggregazioni.
Elementi di PL/SQL.
Introduzione ai Sistemi Informativi e alle Basi di dati
File.
Ricorsione e Debug.
Basi di dati attive Paolo Atzeni.
Basi di dati Università Degli Studi Parthenope di Napoli
SQL Per la modifica di basi di dati
SQL Per la definizione di basi di dati SQL per definire ed amministrare Ogni utente puo definire una base di dati di cui diventa lamministratore potendo.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Programma del Corso Dati e DBMS DBMS relazionali SQL
Vincoli di integrità generici Con i costrutti visti sinora, non è sempre possibile definire tutti i possibili vincoli di integrità. Per questo esiste listruzione.
Manipolazione dei dati I comandi SQL che permettono di modificare il contenuto di una base di dati sono insertdeleteupdate insert ha la seguente sintassi:
Gestione dell’Informazione: Aspetti Introduttivi
Basi di dati Claudia Raibulet
Corso di INFORMATICA anno scolastico 2009/10 Linguaggio SQL IDENTIFICATORI di tabelle e attributi: stringhe di lunghezza max 18 caratteri, composte da.
Basi di Dati Barbara Catania Aspetti Introduttivi.
Basi di Dati e Sistemi Informativi
Gerarchie Ricorsive Una gerarchia ricorsiva deriva dalla presenza di una ricorsione o ciclo (un anello nel caso più semplice) nello schema operazionale.
Basi di Dati e Sistemi Informativi SQL per Applicazioni Home page del corso:
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
BIOINFO3 - Lezione 51 INSERIMENTO DEI DATI Visto come si creano le tabelle (sinora tristemente vuote), cominciamo ad occuparci di come riempirle con dei.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
Dynamic SQL.
SQL*PLUS Worksheet Permette di:
FUNZIONI Dichiarazione: Definizione:
Pagine ASP parte 3 I data base Stefano Schacherl.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D3 Sicurezza e concorrenza nelle basi di dati.
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
Nozione ed uso Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso: –Gestione di vincoli di integrità: Per fallimento Per modifica.
Laboratorio di Servizi Web - servlet - Ardissono 1 Chiarimenti su Servlet Note aggiuntive su architettura di applicazione web che usa Servlet per gestire.
Basi di dati Prof. Giovanni Giuffrida Stanza: 362 tel:
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Capitolo 1: Introduzione 24/09/2002.
UNITÀ LESSICALI Simboli, identificatori, costanti, commenti Simboli: Identificatori: lettere, numeri, $, _, #
TIPI RECORD Sintassi: –TYPE mioTipoRecord IS RECORD (field[,field]*); –field ::= nome tipo [ [NOT NULL] := expr ] I campi possono essere scalari, record,
PLSQL 1.1 LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture.
Elementi di PL/SQL. Pl/Sql Il PL/SQL (Procedural Language/Structured Query Language) è un linguaggio di programmazione procedurale di Oracle che costituisce.
E. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni, Ceri, Paraboschi, Torlone: Basi di dati, Capitolo 1) Introduzione 19/09/2004.
PL/SQL Procedural Language/SQL estensione procedurale del linguaggio SQL.
Introduzione ai database parte seconda
ESERCIZIO PL/SQL e PSP. LO SCHEMA create table studenti ( nome VARCHAR2(15) not null, cognome VARCHAR2(15) not null, eta NUMBER );
TIPI RECORD Sintassi: –TYPE mioTipoRecord IS RECORD (field[,field]*); –field ::= nome tipo [ [NOT NULL] := expr ] I campi possono essere scalari o record.
UNITÀ LESSICALI Simboli, identificatori, costanti, commenti Simboli: Identificatori: lettere, numeri, $, _, #
Basi di Dati e Sistemi Informativi Esercitazione: Il Linguaggio SQL (DDL+DML) Home page del corso:
PHP.  HTML (Hyper Text Markup Language)  CSS (Cascading Style Sheets)  Javascript (linguaggio di programmazione client)  PHP ( Hypertext Preprocessor.
Linguaggi per basi di dati Linguaggi di definizione dei dati Utilizzati per definire gli schemi e le autorizzazioni per l’accesso Linguaggi di manipolazione.
Linguaggio SQL prima parte Linguaggio SQL prima parte A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright © Istituto Italiano.
Basi di Dati attive. Sistemi Informativi DEE - Politecnico di Bari E. TinelliBasi di dati attive2 Definizione Una base di dati si dice attiva quando dispone.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Esercizi SQL Group by. CREATE TABLE dipendente (codDip CHAR(8) NOT NULL UNIQUE PRIMARY KEY, cognome CHAR(60) NOT NULL, nome CHAR(60) NOT NULL, stipendio.
Laurea Magistrale in Informatica Architetture basi di dati A.A Docente: Prof. Carlo Batini Proprieta’ e caratteristiche strutturali dei sistemi.
Transcript della presentazione:

PLSQL 1.1 LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture L’approccio tradizionale: uso di un linguaggio

PLSQL 1.2 ALCUNE ARCHITETTURE DBMS: dati e business rules Logica + interfaccia Sistema di comunicazione DBMS+application server: logica, dati e business rules Interfaccia Sistema di comunicazione Client-Server Thin Client

PLSQL 1.3 THREE TIERS application server: logica applicativa Client: Interfaccia DBMS server: dati e business rules

PLSQL 1.4 IL LINGUAGGIO Scrivere un’applicazione che visualizzi una schermata, raccolga dei dati, segnali eventuali inconsistenze con i dati nella BD oppure inserisca i nuovi dati Serve un linguaggio che possa: Effettuare I/O Effettuare interrogazioni Controllare il flusso in un modo che dipende dal risultato dell’interrogazione Effettuare aggiornamenti

PLSQL 1.5 IL LINGUAGGIO Tre soluzioni: Linguaggio di programmazione + API Linguaggio immerso Linguaggio integrato

PLSQL 1.6 LINGUAGGIO INTEGRATO Integrazione dei tipi di dato Integrazione dello scoping Integrazione del DML

PLSQL 1.7 UNA SOLUZIONE procedure prenotaIf( ilLogin in prenota.login%TYPE, laDatain date, lOrain prenota.ora%TYPE) is unaPrenotazione prenota%ROWTYPE; cursor c is select * from prenota where data = laData and ora = lOra; begin open c; fetch c into unaPrenotazione; if c%NOTFOUND then insert into prenota values (codiceSeq.nextval, ilLogin, laData, lOra, ilTerm, laDataP, ilTermP); else...; end if; end prenotaIf;

PLSQL 1.8 L’ASPETTO DEL CODICE procedure creaElaborato( CodTempAllocazioniTemp.CodTemp%type, Respnumber, ) is i binary_integer; cursor callocazioni is select CodEl, Matricola, from Allocazioni where Allocazioni.CodEl = CreaElaborato.CodTemp; begin insert into Elaborati (CodEl, PassEl, CodCo) values (CodEl, PassEl, '1'); open callocazioni; loop fetch callocazioni into IlCodTemp,LaMatricola; exit when callocazioni%notfound; insert into Allocazioni (Matricola,CodEl,Responsabile) values(LaMatricola,CodEl,'N'); end loop; close callocazioni; endcreaElaborato;

PLSQL 1.9 PL/SQL Un linguaggio per manipolare basi di dati che integra DML (SQL) con il linguaggio ospite Un linguaggio a blocchi con una struttura del controllo completa che contiene l’SQL come sottolinguaggio Permette: Di definire variabili di tipo scalare, record (annidato), insieme di scalari, insiemi di record piatti, cursore Di definire i tipi delle variabili a partire da quelli della base di dati Di eseguire interrogazioni SQL ed esplorarne il risultato Di modificare la base di dati Di definire procedure e moduli Di gestire il flusso del controllo, le transazioni, le eccezioni

PLSQL 1.10 STRUTTURA Il blocco: DECLARE BEGIN EXCEPTION END; La procedura: PROCEDURE IS BEGIN EXCEPTION END;

PLSQL 1.11 Il modulo: interfaccia e implementazione CREATE PACKAGE AS... END ; CREATE PACKAGE BODY AS... END ;

PLSQL 1.12 LE DICHIARAZIONI DI VARIABILI ; CONSTANT := ; CURSOR IS ; Operazioni: OPEN, FETCH, CLOSE Attributi di variabili e cursori: Var%TYPE, dove var è una variabile o una colonna Cur%ROWTYPE dove cur è un cursore o una tabella

PLSQL 1.13 IL FLUSSO DEL CONTROLLO IF - THEN - (ELSIF THEN ) - ELSE - END IF LOOP END LOOP (EXIT WHEN ) FOR var IN seq LOOP END LOOP GOTO label... > comandi

PLSQL 1.14 TABELLE E RECORD Una tabella è un’array associativo dinamico, di tipo TABLE OF INDEX BY I tipi record sono annidabili: RECORD (nome tipo,...,nome tipo)

PLSQL 1.15 ECCEZIONI DECLARE aaa EXCEPTION; RAISE aaa EXCEPTION WHEN aaa THEN... END

PLSQL 1.16 ARCHITETTURA Tre possibilità: Un programma PL\SQL può essere eseguito da uno strumento, che invia i comandi SQL al server; Un programma PL\SQL può essere inviato da uno strumento al server, il quale lo esegue; Un programma PL\SQL può risiedere nel server, che lo esegue.