Modificare gli oggetti efficientemente. Dott. Doria Mauro
|
|
- Ruggero Fumagalli
- 6 anni fa
- Visualizzazioni
Transcript
1 Hibernate Modificare gli oggetti efficientemente Dott. Doria Mauro
2 Transitive persistence La persistenza transitiva è una tecnica che consente di propagare automaticamente la persistenza ad un sottografico di oggetti transienti e/o detached. Ad esempio, nell associazione tra Item e Bid, è possibile legare il ciclo di vita di un oggetto bid a quello dell item in cui si trova: Un bid viene automaticamente reso persistente al momento in cui rendiamo persistente l item Un bid viene cancellato al momento che cancelliamo un item. 2 Esistono diversi modi per realiazzare la transitive persistence, anche se si basano tutti sugli stessi principi
3 Persistence by reachability Uno strato di persistenza si dice che implementa la persistence by reachability se una istanza diventa persistente ogni volta che l applicazione crea un reference a questa istanza da un altra istanza che è già persistente. 3
4 Persistence by reachability Nell esempio precedente: Quando l oggetto Computer diventa persistente, lo diventano pure Desktop PCs e Monitor Quando Computer diventa detached lo diventano anche Desktop PCs e Monitor Se uno di questi due oggetti perde il reference da Computer, diventa automaticamente transient (e quindi rimosso). Si presume una navigazione nel grafo degli oggetti unidirezionale da padre a figlio. 4 Navigando nel grafo degli oggetti, si incontrano soltanto oggetti persistenti; non sono mai possibili violazioni di integrità referenziale.
5 Persistence by reachability Per quanto possa sembrare una strategia affascinante, questa tecnica non è applicabile così com è (ne da Hibernate, ne da altri ORM framework) Sarebbe necessario una sorta di garbage collector per la persistenza con un comportamento simile a quello della JVM Il problema più grosso sta nel fatto che: Gli oggetti sono condivisi (quindi ad un oggetto possono essere collegati references da diversi altri oggetti) Gli oggetti presenti nel persistent context non rappresentano tutti i legami presenti nel DB 5 Per fare questo G.C. sarebbe necessario fare una costante scansione del DB alla ricerca dei legami tra le righe
6 Persistenza a cascata Hibernate applica un tipo più semplice di persistence by reachability: la persistenza a cascata. Hibernate propaga lo stato di un oggetto verso un altro referenziato in base a quanto descritto nella proprietà cascade. La persistenza a cascata è più flessibile e assegna maggiore controllo allo sviluppatore. Solo così è possibile sapere facilmente quando un oggetto diventa detached. 6 Non si attiva di default ed è disponibile in tutti i tipi di associazione: (uno-a-uno, uno-a-molti, molti-a-molti) e per tutte le collections (<set>, <bag>, <list> e <map>).
7 Persistenza a cascata Tutti i valori per l attributo cascade: 7 (Come save-update)
8 Persistenza a cascata 8
9 Persistenza a cascata 9 Il valore delete-orphan si può applicare soltanto alle collections
10 Persistenza a cascata E possibile combinare tra loro diverse opzioni. Ecco alcuni esempi: <many-to-one name="parent" column="parent_category_id" class="category" cascade="save-update, persist, merge"/> NOTA: il valore delete-orphan non è incluso quando si sceglie il valore all <set name="bids" cascade="all, delete-orphan" inverse="true"> <key column ="ITEM_ID"/> <one-to-many class="bid"/> </set> 10 NOTA: non vi è nessuna relazione tra l attributo cascade e quello inverse
11 Esempi di cascade Un amministratore deve poter aggiungere, eliminare e modificare tutte le categorie dei prodotti che vende. Il mapping della classe Category: 11 <class name="category" table="category"> <property name="name" column="category_name"/> <many-to-one name="parentcategory" class="category" column="parent_category_id" cascade="none"/> <set name="childcategories" table="category" cascade="save-update" inverse="true"> <key column="parent_category_id"/> <one-to-many class="category"/> </set>... NOTA: si tratta di una associazione autoreferenziata di tipo molti-a-uno
12 Esempi di cascade aggiungere una nuova categoria E possibile aggiungere una categoria in diversi modi: Session session = sessionfactory.opensession(); L oggetto computer Transaction tx = session.begintransaction(); diventa persistent Category computer = (Category) session.load(category.class, computerid); Category laptops = new Category("Laptops"); computer.getchildcategories().add(laptops); laptops.setparentcategory(computer); 12 tx.commit(); session.close(); Completa la bidirezionalità dell associazione L oggetto laptop diventa persistente sotto l effetto del cascade
13 Esempi di cascade aggiungere una nuova categoria: modalità detached La stessa operazione si può fare quando la categoria padre è detached: Queste operazioni in nessuna sessione: Category computer = (Category) session.get( ) // Caricato in una precedente sessione Category laptops = new Category("Laptops"); computer.getchildcategories().add(laptops); laptops.setparentcategory(computer); 13 Queste operazioni in una seconda sessione: Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); // Rendere persistente la nuova categoria già linkata a suo padre session.save(laptops); tx.commit(); session.close(); NO CASCADE QUI!!! Cosa succederebbe se il cascade fosse attivato per l associazione <many-to-one>? Hibernate valuta il link verso il padre e aggiunge il riferimento alla riga padre anche nel DB indipendentemente da cascade e inverse
14 Esempi di cascade aggiungere una nuova categoria: modalità detached Vediamo un altro esempio per valutare la convenienza di questo stile detached: Queste operazioni in nessuna sessione: 14 Category computer = (Category) session.get( ) // Caricato in una precedente sessione Category laptops = new Category("Laptops"); Category laptopultraportable = new Category("Ultra-Portable"); Metodi che creano Category laptoptabletpcs = new Category("Tablet PCs"); l associazione in tutte laptops.addchildcategory(laptopultraportable); e due i sensi laptops.addchildcategory(laptoptabletpcs); computer.addchildcategory(laptops); Queste operazioni in una seconda sessione: Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); // Rendere persistente tutte le categorie session.save(laptops); tx.commit(); session.close(); Hibernate valuta il link verso il padre e aggiunge il riferimento alla riga padre anche nel DB e poi salva laptop e,a cascata, tutte le sue sottocategorie
15 Esempi di cascade aggiungere una nuova categoria: modalità detached Vediamo ancora un altro esempio per valutare la capacità di updatare (oltre che salvare) a cascata: Queste, dopo aver chiuso la sessione dell esempio precedente:.. //continua dall esempio precedente laptops.setname("laptop Computers"); // Modifica laptopultraportable.setname("ultra-portable Notebooks"); // Mdifica laptoptabletpcs.setname("tablet Computers"); // Modifica Category laptopbags = new Category("Laptop Bags"); laptops.addchildcategory(laptopbags); // Aggiunge Metodo che crea l associazione in tutte e due i sensi Queste operazioni in una seconda sessione: 15 Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); // Modifica 3 categorie e ne inserisce una nuova session.saveorupdate(laptops); tx.commit(); session.close(); Hibernate valuta in autonomia cosa deve essere updatato e cosa invece inserito
16 SaveOrUpdate saveorupdate() ha il seguente effetto: Tutto questo deve essere reso persistente non importa se nuovo o vecchio E una buona idea utilizzare sempre il metodo saveorupdate() anche al posto dei singoli save() o update(). Con saveorupdate(), Hibernate determina lo stato dell oggetto (per decidere quale operazione fare delle due) in maniera molto più semplice rispetto ai metodi save() e update() e comunque senza accedere al DB. Vi è solo un caso (raro) in cui Hibernate effettua una select per determinare questo: quando l oggetto utilizza un identificatore composito con campi normali e non si conosce la sua versione (versioning). 16
17 Delete Normalmente la responsabilità della cancellazione degli oggetti ricade sullo sviluppatore che deve controllare se vi sono references all oggetto prima di cancellarlo. Non è possibile cancellare oggetti a cui sono associati altri oggetti. Abilitando il delete-orphan, quando si rimuove un oggetto dalla collection in cui si trova e questi non ha altri references associati, Hibernate provvedere alla sua rimozione automatica. E una proprietà molto interessante che evita allo sviluppatore di compiere la doppia azione di eliminare l oggetto dalla collezione e dallo stato di persistenza 17 E configurabile soltanto all interno dei tag ti tipo collections
18 Delete-orphan 18 Con delete-orphan disattivato: Item anitem =... // Caricato in una sessione precedente anitem.getbids().remove(abid); anitem.getbids().remove(anotherbid); Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); session.delete(abid); session.delete(anotherbid); session.saveorupdate(anitem); tx.commit(); session.close(); Con delete-orphan attivato: Update dell oggetto prima di chiudere la sessione perché anitem è detached; se fosse persistent, l update sarebbe inutile Necessarie in quanto la semplice rimozione dalla collection non è una operazione di persistenza. Item anitem =... // Caricata in una precedente sessione anitem.getbids().remove(abid); anitem.getbids().remove(anotherbid); Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); session.saveorupdate(anitem); tx.commit(); session.close();
19 bulk and batch operations Quando si manipola una grande mole di dati, il mondo dei DB mette a disposizione la possibilità di scrivere delle funzioni direttamente dulla basedati dette stored procedure Vedremo come Hibernate mette a disposizione degli strumenti per gestire le stored procedure e in generale il problema della massa dei dati. Hibernate consente di modificare gli oggetti direttamente nel DB attraverso il liguaggio HQL 19
20 Updatare oggetti nel DB In Hibernate è possibile updatare gli oggetti direttamente nel DB Queste operazioni sono speciali perché baipassano completamente il persistence context, quindi non hanno nessun effetto sugli oggetti in memoria! Vi sono due modi possibili per procedere: Operare in un nuovo contesto di persistenza Utilizzare il metodo refresh() 20
21 Updatare oggetti nel DB Grazie al linguaggio HQL di Hibernate è possibile lanciare le query che operano direttamente nel DB Ecco un esempio: Query q = session.createquery("update Item i set i.isactive = :isactive"); q.setboolean("isactive", true); int updateditems = q.executeupdate(); Numero di oggetti modificati dall istruzione update La modifica avviene direttamente nel DB. Le query HQL sono molto simili alle istruzioni SQL ma vanno specificate le classi al posto delle tabelle e le proprietà al posto delle colonne. 21
22 Updatare oggetti nel DB Con HQL le update possono essere anche polimorfiche o modificare la versione degli oggetti (versioning). Query q = session.createquery( "update CreditCard set stolenon <= :now where type = 'Visa " ); q.settimestamp("now", new Date() ); int updatedcreditcards = q.executeupdate(); Hibernate conosce la ripartizione dei dati tra le tabelle che mappano la generalizzazione Query q = session.createquery("update versioned Item i set i.isactive = :isactive"); q.setboolean("isactive", true); int updateditems = q.executeupdate(); 22 NOTA: le query HQL non si possono fare join, si può coinvolgere una sola classe alla volta, gli alias sono opzionale e nella were e possibile scrivere delle sottoquery
23 Inserire oggetti nel DB Sempre nell ottica di voler manipolare una grande mole di dati direttamente nel DB, vediamo un esempio di inserimento. Si vuole scrivere una procedura che marchi le carte di credito come rubate e che sposti le informazioni (dati carta, proprietario) in un altra tabella) L idea è quella di usa una istruzione HQL di insert senza passare dal persistent context. 23 Il primo passo è quello di creare una classe apposita da mappare con il DB e il secondo di scrivere l istruzione HQL.
24 Inserire oggetti nel DB Query q = session.createquery ("insert into StolenCreditCard (type, number, expmonth, expyear, ownerfirstname, onwerlastname, ownerlogin, owner address, ownerhomeaddress) select c.type, c.number, c.expmonth, c.expyear, u.firstname, u.lastname, u.username, u. , u.homeaddress from CreditCard c join c.user u where c.stolenon is not null ); int createdobjects = q.executeupdate(); 24
25 Batch query E possibile eseguire una query riportando i dati in memoria in gruppi e non tutti insieme. Ecco un esempio: Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); ScrollableResults itemcursor = session.createquery("from Item").scroll(); int count=0; while ( itemcursor.next() ) { Item item = (Item) itemcursor.get(0); modifyitem(item); if ( ++count % 100 == 0 ) { session.flush(); session.clear(); } } tx.commit(); session.close(); Creazione del cursore Spostamento del cursore Elemento a partire dalla posizione corrente Ogni 100 elementi si ripulisce il persistence context 25 Per avere le migliori prestazioni: hibernate.jdbc.batch_size = numero
26 Batch insert E possibile anche inserire e modificare i modalità betch; lo scopo è quello di fare il flushing dei dati e svuotare il persistent context durante l operazione 26 Session session = sessionfactory.opensession(); Transaction tx = session.begintransaction(); for ( int i=0; i<100000; i++ ) { Item item = new Item(...); session.save(item); if ( i % 100 == 0 ) { session.flush(); session.clear(); } } tx.commit(); session.close(); NOTA: sia per le query che per l insert, è opportuno disabilitare la cache di secondo livello per le classi persistenti. Se si utilizza il generatore di identificativo identity, la batch insert potrebbe non essere supportata
27 Data filtering In alcuni casi, per motivi di sicurezza, si vuole mettere a disposizione soltanto una parte dei dati presenti sul DB. Non sempre è possibile scrivere delle query appropriate che dinamicamente selezionano i dati; cosa succede se scrivo unacategoria.getitems()? Ottengo tutti gli item di quella categoria senza possibilità di evitarne alcuni Una soluzione potrebbero essere le viste (view) sul DB, ma queste non sono nello standard di SQL e molti DB non le supportanto 27 Hibernate consente di filtrare i dati dinamicamente attraverso il meccanismo dei filter
28 Dynamic data filter Prima di tutto il filtro va dichiarato nel file XML di configurazione e si assegna un nome univoco (la dichiarazione è globale): <filter-def name="limititemsbyuserrank"> <filter-param name="currentuserrank" type="int"/> </filter-def> A questo punto è possibile aggiungere il filtro ad una classe: Nome del filtro <class name="item" table="item"> Una condizione SQL di... filtraggio degli oggetti Item <filter name="limititemsbyuserrank condition=":currentuserrank >= (select u.rank from USER u where u.user_id = SELLER_ID)"/> </class> 28 Infine, si abilita il filtro per una sessione e si passano gli eventuali parametri Filter filter = session.enablefilter("limititemsbyuserrank"); filter.setparameter("currentuserrank", loggedinuser.getranking());
29 Dynamic data filter E consentito un passaggio di parameri per la condizione del filtro. Il metodo enablefilter() abilita il filtro e torna un oggeto Filter su cui è possibile invorare diversi metodi. I più utili sono: setparameter(): setta un parametro nella condizione del filtro getfilterdefinition(): lista dei parametri del filtro validate(): Hibernate torna una exception se il parametro non è settato. setparameterlist(): setta una lista di argomenti 29
30 Dynamic data filter A questo punto, tutte le query effettuate sulla sessione filtrata otterranno dei dati soggetti all azione del filtro. List<Item> filtereditems = session.createquery("from Item").list(); List<Item> filtereditems = session.createcriteria(item.class).list(); Solo due metodi non sono soggetti al filtro: Recupero attraverso l identificatore Navigazione tramite il metodo set (es: unacategoria().getitem()) Per evitare questo ultimo aspetto, si può filtrare una collection 30
31 Dynamic data filter I campi di applicazione dei filtri sono molti; per citarne alcuni: Sicurezza: per motivi di sicurezza molto spesso è utile limitare l accesso ad una parte dei dati e non a tutto il DB Dati spaziali: si potrebbe limitare l accesso soltanto a quei dati che sono relativi ad una certa regione spaziale Dati temporali: si potrebbe mettere a disposizione dati in un certo intervallo di tempo (ad esempio l ultima settimana) 31
32 Lazy strategy La lazy strategy è la capacità di Hibernate di gestire efficientemente gli oggetti in memoria rimandando (o ritardando) le operazioni a quando sono strettamente necessario, in modo del tutto trasparente all applicazione. Hibernate applica di default, la lazy strategy per tutti i suoi oggetti identity e le collections. La lazy strategy si basa uno dei pattern fondamentali della GoF: proxy. Il comportamento di base attuato da Hibernate per il lazy è: 32 caricare in memoria soltanto gli oggetti che sono stati richiesti
33 Lazy loading Vediamo la logica lazy alla base del recupero di un oggetto dal DB. Consideriamo il caricamento in base all identificatore: Item item = (Item) session.load(item.class, new Long(123)); Per l applicazione, il risultato sarà il caricamento in memoria dell item 123, e l oggetto è nello stato persistent. In realtà, Hibernate proxa l oggetto l oggetto proxato reale e passa all applicazione NO 33 SI Persistence Context item 123 xxx yyy zzz Proxy 123
34 Lazy loading Ogni volta che viene richiesto ad Hibernate il caricamento di un oggetto, esso controlla se può generare un oggetto proxy a runtime per evitare di accedere al DB. 34 Il proxy ritarda (lazy) il momento dell accesso ai dati fino a quando non viene richiesto l accesso alle proprietà dell oggetto. Item item = (Item) session.load(item.class, new Long(123)); item.getid(); item.getdescription(); // Inizializzazione the proxy Ecco un altro esempio: Item item = (Item) session.load(item.class, new Long(123)); User user = (User) session.load(user.class, new Long(1234)); Bid newbid = new Bid("99.99"); newbid.setitem(item); newbid.setbidder(user); session.save(newbid); L identificatore è già presente nel proxy e quindi non scatta l accesso al DB La descrizione no e quindi scatta l accesso al DB C è solo uno spostamento di puntatori e non è necessarie select sul DB
35 Lazy loading 35 IL lazy loading è estremamento ottimizzato. Al momento del caricamento dell oggetto, si ottiene il proxy quando è possibile! Vediamo un esempio: L oggetto notebook è costruito e salvato in una sessione Category notebook = new Category(..); session2.save(notebook); tx.commit(); session2.close(); //creazione di una nuova sessione con persistence context vuoto. Session session3 = sessionfactory.opensession(); Transaction tx3 = session3.begintransaction(); session3.update(notebook); //senza questa istruzione si ha il proxy //recupero l oggetto notebook salvato in precedenza Category altronotebook= (Category)session3.load(Category.class, new Long(3)); System.out.println("CLASS: " + altronotebook.getclass()); //Category System.out.println("CLASS: " + notebook.getclass()); //Category System.out.println (" IDENTICI: " + altronotebook == notebook); //true L oggetto notebook diventa persistent nella nuova sessione Il persistent context già possiede l oggetto ma di tipo Category; viene restituito questo e non un proxy
36 Lazy loading Il metodo get(), al contrario di load() non torna mai un proxy. Se si vuole la classe reale dell oggetto proxato si può utilizzare un metodo statico di Hibernate: HibernateProxyHelper.getClassWithoutInitializingProxy(obj); Una volta che il proxy è costretto ad accedere al DB, questo si dice inizializzato. In questo caso vengono caricati i dati dal DB ma sempre in una ottica lazy. Hibernate, quando carica un oggetto, cercherà di minimizzare l accesso al DB e di minimizzare l occupazione di spazio di memoria per quell oggetto 36
37 Lazy loading Quando un oggetto Item, ad esempio, è inizializzato, si presenta così: Hibernate costruirà una serie di proxy, uno per ogni associazione *-a-uno presenti nella classe Item Hibernate costruirà una sorta di segnaposto per tutte le collezioni presenti nella classe Item (si parla di segnaposto perché Hibernate wrappa le collection originali con sue collections interne). 37 Le proprietà value e i componenti vengono caricati subito (no lazy)
38 Lazy loading Le collections vengono inizializzate quando si comincia a navigare all interno o quando si chiamano metodi di supporto come size() o contains(). Per le collections, Hibernate adotta un extra lazy: <class name="item" table="item">... <set name="bids" lazy="extra". Con lazy=extra, quando vengono effettuate chiamate ai metodi di supporto, Hibernate non inizializza la collection ma, per ottenere le informazioni, effettua query diretta al DB 38
39 Eager strategy Cosa succede se si tenta di navigare un oggetto proxato non inizializzato o con elementi non inizializzati fuori da una sessione (l oggetto detached)? Si ottiene una LazyInitializationException! Hibernate non è più in grado di recuperare gli oggetti associati perché il persistence context è ormai chiuso. Naturalmente, non sempre il proxy è desiderabile soprattutto per le collections. Hibernate ha una seconda strategia di caricamento dei dati: eager strategy. 39 La eager strategy carica subito l oggetto in ogni sua parte!
40 Eager strategy Non si vuole disabilitare la gestione proxy per tutte le classi; questo sarebbe disastroso per le performance dell applicazioni; Con lazy=false, si disabilita la lazy strategy per una certa classe. Ecco un esempio tra Item e User: 40 <class name="item" table="item">... <many-to-one name="seller lazy="false".../> <set name="bids" lazy="false" inverse="true"> <key column="item_id"/> <one-to-many class="bid"/> </set>... </class>
41 Domande? Eager strategy Lazy load Batch insert reachability Data filter cascade 41 Batch query proxy
Le API per la persistenza. Dott. Doria Mauro
Hibernate Le API per la persistenza Dott. Doria Mauro doriamauro@gmail.com Le operazioni Il servizi di persistenza offerti da Hibertnate si occupano essenzialmente di: Operazioni base CRUD (creazione,
DettagliLe conversazioni. Dott. Doria Mauro
Hibernate Le conversazioni Dott. Doria Mauro doriamauro@gmail.com Introduzione alle conversazioni In una applicazione reale le operazioni sono organizzate in classi controller con le funzioni di business
DettagliMapping delle collections. Dott. Doria Mauro
Hibernate Mapping delle collections Dott. Doria Mauro doriamauro@gmail.com Mapping delle collections di elementi di tipo value primitivi o Stringhe Una classe di tipo value: Non ha una propria identità
Dettagliesempio hello world Dott. Doria Mauro
Hibernate esempio hello world Dott. Doria Mauro doriamauro@gmail.com Presentiamo un primo esempio che consente di gestire un messaggio di testo. Lo scopo è quello di storare il messaggio hello world sul
DettagliLe transazioni. Dott. Doria Mauro doriamauro@gmail.com
Hibernate Le transazioni Dott. Doria Mauro doriamauro@gmail.com Introduzione La demarcazione delle transazioni può essere fatta: In maniera programmatica: demarcazione all interno del codice applicativo.
DettagliMapping delle associazioni. Dott. Doria Mauro doriamauro@gmail.com
Hibernate Mapping delle associazioni Dott. Doria Mauro doriamauro@gmail.com Mapping delle associazioni Abbiamo visto come vi sia un mapping dedicato per le associazioni tra classi entity e classi value.
DettagliManuale SQL. Manuale SQL - 1 -
Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 2 Vincoli di integrità Proprietà che devono essere soddisfatte da ogni istanza della base di dati. Il soddisfacimento è definito rispetto al
DettagliSQL: DDL, VI, Aggiornamenti e Viste
SQL: DDL, VI, Aggiornamenti e Viste 1 SQL è più di un semplice linguaggio di interrogazione v Linguaggio di definizione dati (Data-definition language, DDL): Crea/distrugge/modifica relazioni e viste Definisce
DettagliSQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)
SQL quick reference piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) I tipi dei dati di SQL sono: delimitatori delle costanti: TEXT(n) stringa di caratteri
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Esercitazione PostgreSQL Dopo aver lanciato il client grafico pgadmin III di PostgreSQL svolgere le operazioni descritte nel seguito, tenendo presenti i suggerimenti forniti
DettagliElena Baralis 2007 Politecnico di Torino 1
Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE Linguaggio SQL: fondamenti 2 (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple 4 (2/3) INSERT inserimento di nuove tuple
DettagliFlexCMP La piattaforma accessibile per il web 2.0
Manuale Utente FlexCMP La piattaforma accessibile per il web 2.0 FlexCMP è un prodotto di: Idea Futura S.R.L. Via Toscanini 7/2 40055 Castenaso (BO) - Italy Tel.: +39 051 780630 http://www.ideafutura.com
DettagliBasi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI
Basi di Dati CREAZIONE E POPOLAMENTO DI UNA BASE DI DATI La finalità di questa esercitazione è quella di creare, date delle specifiche progettuale, appositi script di creazione e popolamento di una base
DettagliSQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:
SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i
DettagliRelazioni. Microsoft Access. Relazioni. Relazioni
Relazioni Microsoft Access Relazioni In Access, le relazioni non sono le relazioni del modello relazionale! Relazioni: legate ai concetti di Join Integrità referenziale Relazioni I tipi di relazione possono
DettagliIl linguaggio SQL: autorizzazioni
Il linguaggio SQL: autorizzazioni Sistemi Informativi T Versione elettronica: 04.6.SQL.autorizzazioni.pdf Autorità e privilegi Nei DBMS SQL ogni operazione deve essere autorizzata, ovvero l utente che
DettagliPRIMI PASSI CON UN DATABASE
Basi di dati PRIMI PASSI CON UN DATABASE Definizione di database Per database si intende un insieme di informazioni catalogate ed organizzate. Il tipo di database più diffuso è quello relazionale, composto
DettagliDISPENSA ACCESS (OFFICE 2010 BETA)
DISPENSA ACCESS (OFFICE 2010 BETA) 2. LE RELAZIONI. Una relazione può essere definita come un legame tra due tabelle basato sul valore di uno o più campi di ciascuna delle due tabelle. Di solito i campi
Dettagli3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.
3.5 STAMPA UNIONE Le funzioni della stampa unione (o stampa in serie) permettono di collegare un documento principale con un elenco di nominativi e indirizzi, creando così tanti esemplari uguali nel contenuto,
DettagliIl paradigm mismatch. Dott. Doria Mauro
Hibernate Il paradigm mismatch Dott. Doria Mauro doriamauro@gmail.com The paradigm mismatch Per paradigm mismatch si intende la discordanza tra il modello di una applicazione ad oggetti e il modello dei
DettagliCORSO ACCESS PARTE IV
Creazione di un database / gestione tabelle Per creare un nuovo database Menu File Selezionare Nuovo Scegliere Database vuoto nella scheda Generale e confermare con Ok Impostare il nome e il percorso nella
DettagliSQL - Structured Query Language
SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente
DettagliOperazioni scatenanti. Nozione ed uso. Sintassi. Esempio
Nozione ed uso Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso: Gestione di vincoli di integrità: Per fallimento Per modifica Auditing: Sicurezza Statistiche Valori derivati
DettagliTriggers. Antonella Poggi, Claudio Corona. Dipartimento di informatica e Sistemistica Università di Roma La Sapienza
Triggers Antonella Poggi, Claudio Corona Dipartimento di informatica e Sistemistica Università di Roma La Sapienza Progetto di Applicazioni Software Anno accademico 2008-2009 Questi lucidi sono stati prodotti
DettagliLABORATORIO di INFORMATICA
Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO RELAZIONALE http://www.diee.unica.it/giacinto/lab
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 9 Raffaella Gentilini 1 / 41 Sommario 1 DBMS Attivi e Triggers 2 2 / 41 DBMS Attivi DBMS Attivi I DBMS tradizionale sono passivi: Eseguono delle operazioni solo
DettagliI.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1
I.I.S. G. COSSALI - ORZINUOVI DATABASE Marzo 2017 Prof. Dario Tomasoni 1 IMPOSTAZIONE 60 min = Database concetti + Esercizi; 10 min = pausa; 30 min = Linguaggio SQL; 30 min = Database prove LibreOffice
DettagliProcedure di Acquisto con MePA
Procedure di Acquisto con MePA Guida all uso Abilitazioni Ordine Diretta (ODA) Richiesta di Acquisto (RDO) Questa presentazione è un mero esempio che può essere utile come brogliaccio per procedere agli
Dettagli2011 Politecnico di Torino 1
SQL per le applicazioni Call Level Interface Le richieste sono inviate al DBMS per mezzo di funzioni del linguaggio ospite soluzione basata su interfacce predefinite API, Application Programming Interface
DettagliInterrogazioni nidificate
Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,
DettagliSISTEMA GESTIONE TOMBINI
SISTEMA GESTIONE TOMBINI Il sistema offre funzionalità di rilievo sul campo e censimento dei tombini presenti sulle strade comunali per mezzo di una App dedicata. Il rilievo è basato sul posizionamento
DettagliLinked Lists. Liste linkate (1) liste linkate ( stack, queues ), trees. Liste linkate come strutture
Linked Lists Liste linkate () La combinazione di class/struct e puntatori porta alla creazioni di interessanti Abstract Data Type liste linkate ( stack, queues ), trees Liste linkate come strutture struct
DettagliPlantview Usernames
Plantview 3.9.2 Usernames Come creare e gestire più username all'interno di un account Indice del documento Sommario Indice del documento 2 Prefazione 3 Utenti dell account 4 I contatti 4 Creare un contatto
DettagliV. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/2002 4.1
Modelli di Base Dati 4 Un DBMS: Access a.a. 2001/2002 4.1 DBMS 4.2 DBMS = Data Base Management System Software per la costruzione e la gestione di una base dati Esempi di DBMS: Oracle, MySQL, SQLServer,
DettagliCosa sono le maschere
Prof. Emanuele Papotto Cosa sono le maschere La maschera è un oggetto di database che viene realizzato per mostrare, modificare e immettere i record in modo più chiaro rispetto alla visualizzazione foglio
DettagliWINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO
Servizi per l e-government nell università Federico II WINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO CONNESSIONE_TERMINAL_SERVER PAG. 1 DI 13 Indice 1. Premessa...3
DettagliAnalysis Service. Dutto Riccardo IPSI - tel Dutto Riccardo - SQL Server 2008.
SQL Server Business Intelligence Development Studio Analysis Service Dutto Riccardo riccardo.dutto@polito.it IPSI - tel.7991 http://dbdmg.polito.it/ Il Data warehouse Sorgenti dati operazionali DB relazionali
DettagliSezione 1: intestazione contenente i dettagli relativi al profilo utente e stream (tipi di richieste) disponibili
2.1 Home Page Sezione 1: intestazione contenente i dettagli relativi al profilo utente e stream (tipi di richieste) disponibili Sezione 2: una serie di finestre che evidenziano le news più recenti, la
DettagliGuida d uso per il nuovo portale di riparazione
Guida d uso per il nuovo portale di riparazione Introduzione In questa guida imparerai come navigare tra le varie schede del portale e come creare e gestire gli ordini di riparazione. Lo Scopo Lo scopo
DettagliDomande utili alla preparazione dell orale di Informatica all Esame di Stato
Domande utili alla preparazione dell orale di Informatica all Esame di Stato 1.Al livello fisico un database si appoggia ai files per contenere i suoi dati? 2.Esistono altri modelli di organizzazione oltre
DettagliINTRODUZIONE ALLE BASI DATI RELAZIONALI
INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE
DettagliIl sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.
PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,
DettagliSQL Server BI Development Studio. SQL Server Business Intelligence Development Studio. Analysis Services
SQL Server Business Intelligence Development Studio Analysis Service Dutto Riccardo Analysis Services Operazioni OLAP Creazione di dimensioni Creazione e interrogazione di cubi Operazioni di Data Mining
DettagliFondamenti di Informatica e Laboratorio T-AB T-15 Strutture dati
Fondamenti di Informatica e Laboratorio T-AB T-15 Strutture dati Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica Università degli Studi di Bologna Anno Accademico 2008/2009 Sommario
DettagliIntroduzione al C++ (continua)
Introduzione al C++ (continua) I puntatori Un puntatore è una variabile che contiene un indirizzo di memoria pi_greco 3.141592 pi_greco_ptr indirizzo di 3.141592 & DEREFERENZIAZIONE RIFERIMENTO * se x
DettagliIMPORTAZIONE PRESENZE DA RILEVATORI ELETTRONICI. tramite file tracciato
IMPORTAZIONE PRESENZE DA RILEVATORI ELETTRONICI tramite file tracciato 1. Associazione del numero di badge ai nominativi Il programma PowerDIP consente di importare le presenze acquisiste con i rilevatori
DettagliSilvia Chiusano, Paolo Garza 1
Creazione di un trigger Sviluppo ed utilizzo dei trigger in Oracle Silvia Chiusano Paolo Garza CREATE TRIGGER nome_trigger modo evento [OR evento] ON tabella [REFERENCING referenza] [] [WHEN (predicato
DettagliVARIABILI, ASSEGNAZIONE, DECISIONI
LEZIONE-TSQL-03 PROGRAMMAZIONE (VER02) PAG. 1 / 6 LEZIONE-TSQL-03 PROGRAMMAZIONE (VER02) T-SQL PROGRAMMAZIONE PARTE TERZA VARIABILI, ASSEGNAZIONE, DECISIONI Tratto da Gregory A. Larsen, http://www.databasejournal.com/features/mssql/article.php/3087431/t-sql-programming-part-1---defining-variables-and-if-logic.htm
DettagliASP e Database. A cura di Michele Cavalieri
ASP e Database A cura di Michele Cavalieri (fonte http://www.aspitalia.com/articoli/db/introduzione.aspx ) Un aspetto fondamentale di ASP è l'utilizzo dei componenti, che non sono altro che ActiveX come
DettagliESERCITAZIONI ACCESS
ESERCITAZIONI ACCESS MS Access 2000 Struttura di riferimento: Studente (Matricola, Cognome, Nome) Esame (Matricola, Materia, Voto, Data) CREARE LE TABELLE IN SQL: Create table STUDENTE ( matricola char(6)
DettagliRelazioni e tabelle. Introduzione alle Basi di Dati Relazionali. Relazioni uno a uno. Esempio
Relazioni e tabelle Introduzione alle Basi di Dati Relazionali Nelle Basi di Dati relazionali le informazioni sono organizzate in tabelle Le tabelle sono rappresentate mediante griglie suddivise in colonne
DettagliLa stampa Unione con MS-Word
La stampa Unione con MS-Word Il documento PRINCIPALE La stampa unione può essere utilizzata per creare: Lettere Buste Etichette. o documenti vari (Circolari ) La prima operazione da compiere sarà la scelta
DettagliUtilizzo collegamento remoto
Utilizzo collegamento remoto Introduzione Il collegamento VPN (virtual private network) consente a PC collegati ad internet ma fisicamente fuori dalla rete interna regionale, di accedere, con le credenziali
DettagliMicrosoft Access. Microsoft Access. Maurizio Rebaudengo, Paolo Garza 1. Microsoft Access. Creazione base di dati. Apertura di una base dati
Microsoft Access Programma applicativo del pacchetto Microsoft Office per la gestione delle basi di dati. Microsoft Access 2 Creazione base di dati Apertura di una base dati Una nuova base dati si crea
Dettagli1 - Spesometro guida indicativa
1 - Spesometro guida indicativa Il cosiddetto spesometro non è altro che un elenco contenente i dati dei clienti e fornitori con cui si sono intrattenuti dei rapporti commerciali rilevanti ai fini iva.
DettagliCome creare un nuovo Prodotto per ebay con Var.
imaio.com imaio v. 3.0 Come creare un nuovo Prodotto per ebay con Var. In questa guida verra illustrato come creare un nuovo prodotto sul sistema imaio III per essere poi pubblicato sul Negozio ebay con
DettagliMS Access: Tutorial Tabelle, Relazioni
Università Magna Graecia di Catanzaro Informatica MS Access: Tutorial Tabelle, Relazioni Docente : Alfredo Cuzzocrea e-mail : cuzzocrea@si.deis.unical.it Tel. : 0984 831730 Microsoft Access Tutorial Tabelle,
DettagliCaratteristiche dei linguaggi per Database
IL LINGUAGGIO Caratteristiche dei linguaggi per Database I linguaggi per basi di dati relazionali possiedono i comandi per: definizione del data base; manipolazione dei dati; associazione tra tabelle diverse;
DettagliSerializzazione Java. Serializzazione. Calendario esercitazioni e laboratori. Applicazioni della Serializzazione
Calendario esercitazioni e laboratori 29 Marzo esercitazione 12 Aprile esercitazione 26 Aprile laboratorio (lab721) 2 Maggio laboratorio (lab721) 3 Maggio esercitazione 9 Maggio laboratorio (???) 17 Maggio
Dettaglie-procurement Hera QUICK REFERENCE MANUALE PER TRATTATIVE IN BUSTA CHIUSA
e-procurement Hera QUICK REFERENCE MANUALE PER TRATTATIVE IN BUSTA CHIUSA Indice del manuale Il presente manuale fornisce le istruzioni necessarie alla creazione ed invio dell offerta per le negoziazioni
DettagliL INTERFACCIA GRAFICA DI EXCEL
Dopo l avvio del foglio elettronico apparirà un interfaccia grafica nella quale verrà aperta una nuova cartella di lavoro alla quale il PC assegnerà automaticamente il nome provvisorio di Cartel1. La cartella
DettagliEntity Framework & SQL Server - Better Together
Entity Framework & SQL Server - Better Together Alberto Dallagiacoma @albertodall E-Mail: alberto.dallagiacoma@dotdotnet.org Blog: http://blogs.ugidotnet.org/alby Sponsors Organizers getlatestversion.it
DettagliSISTEMI OPERATIVI, RETI, INTERNET
Competenze e Unità didattica formativa capitalizzabile 4.1 SISTEMI OPERATIVI, RETI, INTERNET Comprendere il significato dell'evoluzione dei sistemi operativi. Comprendere che cosa fa un sistema operativo
DettagliManuale Sito Videotrend
Manuale Sito Videotrend 1 Sommario INTRODUZIONE...3 PRESENTAZIONE...4 1 GESTIONE DDNS...6 1.1 GESTIONE DDNS...6 1.2 CONNESSIONE DDNS...6 1.3 CREA ACCOUNT DDNS...7 1.4 GESTIONEACCOUNT...7 1.5 IMPIANTI DDNS...8
DettagliCloud GDrive, Dropbox
Cloud GDrive, Dropbox Lezione 3 Lavorare con Dropbox Video Dropbox permette, oltre all'archiviazione di file in rete, di lavorare direttamente all'interno del servizio sul web, attraverso l'uso dell'applicazione
DettagliWORD PROCESSING.
WORD PROCESSING www.diego72.altervista.org CREARE IN SERIE LETTERE ED ETICHETTE La Creazione guidata Stampa unione è presente nella scheda Lettere consente di creare lettere tipo, etichette per indirizzi,
DettagliSQL: Definizione e Manipolazione di Relazioni. Capitolo 2
SQL: Definizione e Manipolazione di Relazioni Capitolo 2 1 Sintassi della Creazione di uno Schema Relazionale CREATE TABLE ( [NOT NULL] [UNIQUE] [],...,...,
DettagliLa classe std::vector della Standard Template Library del C++
La classe std::vector della Standard Template Library del C++ Alberto Garfagnini Università degli studi di Padova 23 Ottobre 2013 Programmazione generica in C++ : i Template I templates sono probabilmente
DettagliLa Back Office Console consente di costruire lo scheletro degli schema.
BACK OFFICE CONSOLE 1.1 Introduzione 3 1.2 Creazione di uno Schema 4 1.2.1 Struttura dello Schema 5 1.2.2 Caratteristiche dei campi 6 1.2.3 Traduzioni 8 1.3 Ricerca degli schema 8 1.4 Gestione delle Categorie
DettagliCome usare la piattaforma StartUp
Come usare la piattaforma StartUp Gestione del profilo personale Per rendere visibile il tuo profilo agli altri utenti: Accedi al tuo profilo Ø Personal desktop > Personal Data and Profile Aggiorna il
DettagliMODULO 2. Query normali e parametriche Query di:
MODULO 2 TITOLO DBMS e SQL In questo Modulo si affronta lo studio dei DBMS Access e MySQL. In particolare per Access, si descrive come progettare, impostare e modificare gli strumenti di lavoro (tabelle,
DettagliMANUALE PER L'UTENTE VERSIONE 1.3
MANUALE PER L'UTENTE VERSIONE 1.3 2017 Luca Borghese 1 Indice Introduzione...Pag. 3 PANORAMICA DELL APPLICAZIONE Pagina Login/Logout...Pag. 3 Pagina Amministratore...Pag. 4 Modifica utenti...pag. 6 Inserimento
DettagliIl software Epi Info
Il software Epi Info Controlli sui dati nell esempio dello studio sulla compliance: Crea maschera Controlli sui valori dei dati Quando si creano i campi (clic destro sulla maschera) è già possibile utilizzare:
DettagliMANUALE UTENTE UPLOADER JAVA
MANUALE UTENTE UPLOADER JAVA Indice 1. Accesso all applicazione 2 2. Selezionare e aprire una cartella 2 3. Caricare file e cartelle 3 4. Scaricare un file o una cartella 6 5. Funzioni avanzate 8 6. Aggiornare
DettagliProgrammazione con Java
Programmazione con Java Classi e istanze in Java Definizione di classe in Java A meno che non si usino classi già scritte da altri, prima di poter creare un qualsiasi oggetto devo creare la sua rappresentazione:
DettagliCorso sul PACCHETTO OFFICE. Modulo Access
Corso sul PACCHETTO OFFICE Modulo Access Docente: dott. Marco Cardani Lezione 2 Come creare un database 1 2 Come creare un database Impareremo ora come creare un nuovo database in modo da raggiungere un
DettagliPAGINA PERSONALE DEL DOCENTE
COME AGGIUNGERE NUOVE PAGINE PAGINA PERSONALE DEL DOCENTE Una volta effettuato dalla home di unipa.it il login con il nome utente e la password usati per la mail, si accede all area privata della propria
DettagliCorso di Cmap Tools. 5-Lavorare con le risorse
Corso di Cmap Tools 5-Lavorare con le risorse 1 Prerequisiti Utilizzo elementare del computer Caricare (uploading) file in rete Scaricare (downloading) file dalla rete 2 1 Introduzione In questa Unità
DettagliCorso di Basi di Dati
Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ SQL (Structured Query Language) e il linguaggio di riferimento per le basi di dati relazionali. Diverse
DettagliAnthericaCMS. Gestisci in autonomia i contenuti del tuo sito-web
AnthericaCMS Gestisci in autonomia i contenuti del tuo sito-web INDICE I vantaggi di un sito dinamico... 1 I vantaggi di anthericacms... 2 La piattaforma di gestione dei contenuti... 3 Accesso: le sezioni...
DettagliJDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico
JDBC Marco Tessarotto Programmazione dei Web Server Anno Accademico 2004-2005 JDBC JDBC (Java Database Connectivity) è una API Java per accedere ed elaborare dati in una sorgente dati (di solito un db
DettagliSQL Server 2008. Architettura Client-Server. SQL Server 2008. Introduzione all uso di SQL Server 2008. Dutto Riccardo. http://dbdmg.polito.
SQL Server 2008 Introduzione all uso di SQL Server 2008 Dutto Riccardo http://dbdmg.polito.it SQL Server 2008 Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL Server Business
DettagliFUNZIONI COME COMPONENTI SW FUNZIONI COME COMPONENTI SW FUNZIONI MODELLO CLIENTE/SERVITORE
FUNZIONI Spesso può essere utile avere la possibilità di costruire nuove istruzioni che risolvano parti specifiche di un problema Una funzione permette di dare un nome a una espressione rendere tale espressione
Dettagli2011 Politecnico di Torino 1
SQL per le applicazioni Esercitazione PHP e MySQL Svolgimento D B M G Passi di risoluzione creazione e popolamento della base di dati Creazione di un script SQL Passo 2 creazione di una query d interrogazione
DettagliGALLERY. Album immagini
GALLERY In questo menù del pannello di amministrazione si trovano tutte le funzioni utili alla gestione delle foto, dei video e degli album da inserire all'interno delle pagine con funzione ALBUM IMMAGINI
DettagliDATABASE PER IL WEB. Programmazione Web 1
DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL Operazioni di aggiornamento operazioni di inserimento: insert eliminazione: delete modifica: update di una o più ennuple di una
DettagliIl linguaggio SQL: le viste
Il linguaggio SQL: le viste Basi di dati 1 Il linguaggio SQL: le viste Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL: le viste Basi di dati 2 Introduzione
DettagliIntroduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1
ECDL - Database Introduzione European Computer Driving Licence - Modulo 5 - Database LEZIONE 1 Informazioni sul corso orario: Giovedì - 14.30-16.30 materiale: http://www.fotoboni.com/carlo/ docente: webmaster@fotoboni.com
DettagliLe Basi di Dati Attive
Le Basi di Dati Attive Basi di dati: Architetture e linee di evoluzione - Seconda edizione Capitolo 5 Appunti dalle lezioni SQL in Linguaggi di programmazione L uso diretto dell interprete SQL è tipicamente
DettagliC3 IL DBMS MICROSOFT ACCESS
C3 IL DBMS MICROSOFT ACCESS 1 GERARCHIE OBBLIGATORIE Nella progettazione di una base di dati abbiamo moltissimi gradi di libertà ma anche alcune regole rigide che siamo costretti a rispettare. Il primo
DettagliInserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record
Inserire record Microsoft Access Maschere (II) Una maschera può essere sfruttata non solo per vedere dati ma anche per immettere nuovi record, per modificarli o per cancellarli (come in visualizzazione
Dettagliliceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE TRIENNIO: TERZA DISCIPLINA: INFORMATICA
INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE TRIENNIO: TERZA DISCIPLINA: INFORMATICA MODULO 1: HTMLe CSS UNITÀ ORARIE PREVISTE: 35 Il linguaggio HTML ed il web I principali tag I fogli di stile:
DettagliSQL QUERY: Le interrogazioni del database
Appunti della lezione di Database del 20 ottobre 2016 (mattina) Studenti: D Amuri Giuseppe, De Luca Federico Professore: Mario Bochicchio SQL QUERY: Le interrogazioni del database Per effettuare un interrogazione
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: Framework Hibernate Parte b versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliArcGIS - ArcView 3- strumenti di analisi
ArcGIS - ArcView 3- strumenti di analisi Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it - tel +39.031.332.7524 05/05/05 - v
DettagliSQL Server Introduzione all uso di SQL Server Dutto Riccardo. Dutto Riccardo - SQL Server 2008.
SQL Server 2008 Introduzione all uso di SQL Server 2008 Dutto Riccardo http://dbdmg.polito.it SQL Server 2008 SQL Server Management Studio Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione
DettagliGestione codici IBAN Sistema Pagamenti
Direzione Regionale Salute e Integrazione Sociosanitaria Area Risorse Finanziarie, Analisi di Bilancio, Contabilità Analitica e Crediti Sanitari Gestione codici IBAN Sistema Pagamenti Indice del documento
DettagliCon un DB vuoto (non proprio visto che alcuni campi sono valorizzati di default) il sito si presenta come nell immagine 1.
Intro: Questa piattaforma permette di creare un sito/blog in modo semplice e abbastanza intuitivo (se si capisce il pannello di controllo che ho creato, sto cercando di migliorarlo;-)) Infatti nei vari
Dettagli