Basi di Dati: Corso di laboratorio

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Basi di Dati: Corso di laboratorio"

Transcript

1 Basi di Dati: Corso di laboratorio Lezione 1 Raffaella Gentilini 1 / 67

2 Sommario 1 Introduzine al Linguaggio SQL Concetti Preliminari / 67

3 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 3 / 67

4 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 1) Data Definition Language (DDL): Permette di definire, modificare e cancellare strutture dati e vincoli di integrita. Istruzioni del DDL: CREATE, ALTER, DROP, RENAME, TRUNCATE... 4 / 67

5 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 2) Data Manipulation Language (DML) Consente la manipolazione dei dati. In particolare, il DML consente di estrarre, modificare e cancellare i dati contenuti nella base di dati. Istruzioni del DML: SELECT, INSERT, UPDATE, DELETE... 5 / 67

6 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 3) Data Control Language (DCL) Permette di gestire i privilegi degli utenti della base di dati. Istruzioni del DCL: GRANT, REVOKE 6 / 67

7 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 4) Transaction Control Language (TCL) Permette di gestire le transazioni ed in particolare la validazione e l annulamento delle modifiche della base di dati definite mediante il DDL ed il DML. Istruzioni del TCL: COMMIT, SAVEPOINT, ROLLBACK, SET TRANSACTION 7 / 67

8 Concetti Preliminari Il linguaggio SQL SQL Acronimo per Structured Query Language Il linguaggio SQL ha varie funzionalita : 5) Embedded SQL Permette di integrare i comandi SQL in un linguaggio ospite (C, C++, Java... ) 8 / 67

9 Concetti Preliminari Il linguaggio SQL nel Tempo SQL:Un po di storia 1974 Prima proposta SEQUEL (IBM Research) 1981 Prime implementazioni in SQL/DS (IBM) e Oracle Dal 1983 e uno standard di fatto: standard 1986, standard 1992, poi 1999, e infine recepito solo in parte 9 / 67

10 Concetti Preliminari SQL-92 SQL-92 E un linguaggio ricco e complesso ancora nessun sistema mette a disposizione tutte le funzionalita del linguaggio 3 livelli di aderenza allo standard: Entry SQL: Abbastanza simile a SQL-89 Intermediate SQL Supportato dai DBMS tradizionali/ caratteristiche piu importanti per le esigenze del mercato Full SQL: Funzioni avanzate, in via di inclusione nei sistemi i sistemi offrono funzionalita non standard incompatibilia tra sistemi/ con i nuovi standard (SQL-99) Nuovi standard conservano caratteristiche di base di SQL-92 SQL-99: Aggiunge alcune funzionalita orientate agli oggetti SQL-03: Aggiunge il supporto per dati XML 10 / 67

11 Concetti Preliminari Utilizzo di un DBMS basato su SQL Un DBMS basato su SQL consente di gestire basi di dati relazionali. Dal punto di vista sistemistico e un server. Quando ci si connette ad un DBMS basato su SQL si deve indicare, implicitamente o esplicitamente, su quale base di dati si vuole operare Se si vuole utilizzare una base di dati non ancora esistente, si utilizza un meccanismo messo a disposizione dal server per la sua creazione Coerentemente con la filosofia del modello relazionale, una base di dati in SQL e caratterizzata dallo schema (livello intensionale) e da una istanza (quella corrente livello estensionale) Inoltre, una base di dati SQL e caratterizzata da un insieme di meta-dati (il catalogo) 11 / 67

12 Astrazione dei dati in SQL 12 / 67

13 Definizione di uno schema Concetto di Schema Uno schema permette di dividere logicamente una base di dati in parti separate che possono comunicare tra loro. E identificato da un nome di schema 13 / 67

14 Definizione di uno schema Concetto di Schema Uno schema permette di dividere logicamente una base di dati in parti separate che possono comunicare tra loro. E identificato da un nome di schema Example La seguente istruzione del DDL di SQL crea uno schema chiamato Ditta: CREATE SCHEMA Ditta; 14 / 67

15 Definizione di uno schema Sintassi dell istruzione CREATE SCHEMA CREATE SCHEMA <nome database> [AUTHORIZATION<nome prop>] A seguito del nome, uno schema puo contenere: 15 / 67

16 Definizione di uno schema Sintassi dell istruzione CREATE SCHEMA CREATE SCHEMA <nome database> [AUTHORIZATION<nome prop>] A seguito del nome, uno schema puo contenere: un identificatore di autorizzazione per indicarne il proprietario proprietario (se vuoto: l utente) 16 / 67

17 Definizione di uno schema Sintassi dell istruzione CREATE SCHEMA CREATE SCHEMA <nome database> [AUTHORIZATION<nome prop>] A seguito del nome, uno schema puo contenere: un identificatore di autorizzazione per indicarne il proprietario proprietario (se vuoto: l utente) definizioni di tabelle, domini, viste, privilegi, vincoli e funzioni. 17 / 67

18 Metalinguaggio di Sintassi [ ] Le parentesi quadre indicano che il contenuto e opzionale < > Indicano che il contenuto e di libero arbitrio (e.g. scelta del nome dello schema) { } Indicano una scelta (e.g. {item1 item2} indica la scelta tra item1 ed item2)... I punti di sospensione indicano la possiblita di una ripetizione 18 / 67

19 Oggetti di uno schema Dopo aver creato uno schema e possibile aggiungere oggetti al suo interno qualificandone il nome mediante il nome dello schema seguito da un punto Example CREATE DOMAIN Ditta.dom stipendio AS NUMERIC(8, 2) CHECK VALUE 900; CREATE DOMAIN Ditta.dom cod impiegato AS VARCHAR(4); CREATE TABLE Ditta.Impiegato ( cod Ditta.dom cod impiegato PRIMARY KEY, nome varchar(40) NOT NULL, stipendio Ditta.dom stipendio ); 19 / 67

20 Oggetti di uno schema Example Di solito lo schema SQL in cui vengono dichirati gli oggetti (tabelle, domini... ) e specificato implicitamente dall ambiente in cui vengono eseguite le rispettive istruzioni di CREATE In tal caso non e necessario associare esplicitamente il nome dello schema ai nomi degli oggetti separandoli con un punto CREATE TABLE Impiegato ( cod dom cod impiegato PRIMARY KEY, nome varchar(40) NOT NULL, stipendio dom stipendio ); 20 / 67

21 Schemi predefiniti in PostgreSQL In PostgreSQL esiste uno schema predefinito public. Quando un elemento della base di dati viene creato o riferito senza la qualificazione di uno schema, il sistema assume che la qualificazione sia public. Example Ad esempio, l istruzione: CREATE TABLE R (a CHAR PRIMARY KEY, b CHAR); equivale a: CREATE TABLE public.r (a CHAR PRIMARY KEY, b CHAR); 21 / 67

22 CREATE TABLE L istruzione del DDL di SQL CREATE TABLE: definisce uno schema di relazione ( tabella) crea un istanza vuota dello schema specifica attributi, domini e vincoli. 22 / 67

23 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); 23 / 67

24 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 24 / 67

25 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 25 / 67

26 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 26 / 67

27 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 27 / 67

28 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 28 / 67

29 CREATE TABLE: Sintassi Example CREATE TABLE utente( VARCHAR(40) NOT NULL, nome VARCHAR(30) NOT NULL, cognome VARCHAR(30) NOT NULL, anno nascita INTEGER, PRIMARY KEY ( )); Sintassi dell istruzione CREATE TABLE CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 29 / 67

30 CREATE TABLE <nome tab> ( <nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] [, {<nome col><dominio> [DEFAULT<val>] [<vincolo col> [... ]] <vincolo tab>}[,... ]]) 1 Elementari (predefiniti) Carattere: singoli caratteri o stringhe anche di lunghezza variabile Bit: flag booleani o stringhe Numerici esatti ed approssimati data, ora, intervalli di tempo 2 definiti dall utente 30 / 67

31 o Carattere o char(n) char varchar(n) Descrizione Stringhe di n caratteri (lunghezza fissa). A stringhe piu corte sono aggiunti spazi in coda. sinonimo di char(1) Stringhe di al piu n caratteri 31 / 67

32 Numerici: Tipi Numerici Esatti (I) Permette di rappresentare valori interi o decimali mediante una rappresentazione in virgola fissa. o Descrizione smallint Intero. 2 byte, range [ 2 15, ] integer Intero. 4 byte, range [ 2 31, ] 32 / 67

33 Numerici: Tipi Numerici Esatti (II) Permette di rappresentare valori interi o decimali mediante una rappresentazione in virgola fissa. o numeric(prec,scala) numeric decimal(prec,scala) Descrizione per calcoli esatti fino a 1000 cifre significative. Scala e il numero di cifre dopo la virgola. Prec e il numero di cifre significative Esempio: ha precisione 6 e scala 4. Gli interi hanno scala 0. Memorizza numeri decimali fino alla precisione massima consentita dall implementazione, e assume scala 0. come numeric(prec,scala) ma assume che prec sia limite inferiore alla precisione. 33 / 67

34 Numerici: Tipi Numerici Approssimati Permette di rappresentare valori numerici approssimati mediante una rappresentazione in virgola mobile. o real double precision float(prec) Descrizione Numeri in virgola mobile. Tipicamente nel range [10 37, ], con almeno 6 cifre corrette Numeri in virgola mobile. Tipicamente nel range [10 307, ], con almeno 15 cifre corrette prec specifica la precisione minima accettabile come numero di cifre binarie. 34 / 67

35 Temporali o timestamp date time interval Descrizione Data e ora. Esempio: 10-may :30:10 Data. Esempio: (formato raccomandabile anno-mese-giorno ) Ora. Esempio: 5.50 pm Intervalli di tempo. Esempio: 1 day 12 hours 50 min 10 sec ago 35 / 67

36 Booleani o boolean Descrizione Tipo booleano. Esempi di valori booleani: TRUE, FALSE/ t, f / true, false, y, n / yes, no, 1, 0 36 / 67

37 definiti dall utente definiti dall utente L utente puo definire i propri domini con l istruzione: Example CREATE DOMAIN CREATE DOMAIN provincia AS CHAR(2) NOT NULL; 37 / 67

38 definiti dall utente Example CREATE DOMAIN voto AS INTEGER CHECK (VALUE BETWEEN 18 AND 30) oppure CREATE DOMAIN voto AS INTEGER CHECK (VALUE > 17 AND VALUE 30) Example CREATE DOMAIN nat pari AS INTEGER CONSTRAINT positivo CHECK (VALUE 0) CONSTRAINT positivo CHECK (VALUE %20) 38 / 67

39 Vincoli Intrarelazionali Proprieta che devono essere soddisfatte da ogni istanza di relazione della base di dati. Si riferiscono a singole relazioni della base di dati. in SQL: NOT NULL: attributo non nullo UNIQUE: definisce (super-) chiavi PRIMARY KEY: definisce la chiave primaria (una sola, implica NOT NULL) CHECK(condizione): vincolo generico 39 / 67

40 NOT NULL NOT NULL Il valore nullo non e ammesso come valore dell attributo. Example Il valore dell attributo deve essere specificato in fase di inserimento. CREATE TABLE Ditta.Impiegato ( cod Ditta.dom cod impiegato PRIMARY KEY, nome VARCHAR(40) NOT NULL, stipendio Ditta.dom stipendio ); 40 / 67

41 UNIQUE UNIQUE Impone che i valori di un attributo (oppure di un insieme di attributi) siano una superchiave, quindi tuple differenti della stessa tabella non possono avere gli stessi valori. Si puo definire su: un solo attributo Matricola CHAR(6) UNIQUE un insieme di attributi Nome VARCHAR(20) Cognome VARCHAR(20) UNIQUE(Nome,Cognome); 41 / 67

42 UNIQUE UNIQUE su insieme di attributi Nome VARCHAR(20) NOT NULL, Cognome VARCHAR(20) NOT NULL, UNIQUE(Nome,Cognome) Impone che non ci siano due righe che abbiano uguale sia il nome che il cognome UNIQUE su singoli attributi Nome VARCHAR(20) NOT NULL UNIQUE, Cognome VARCHAR(20) NOT NULL UNIQUE Impone che non ci siano due righe che abbiano lo stesso nome o lo stesso cognome 42 / 67

43 PRIMARY KEY Specifica la chiave primaria della relazione Si usa una sola volta per tabella Implica una definizione di not null Due forme 1 In definizione di un attibuto, se forma da solo chiave primaria Matricola CHAR(20)PRIMARY KEY 2 Come elemento separato (quando la chiave primaria e composta da piu attributi) Nome VARCHAR(20), Cognome VARCHAR(20), PRIMARY KEY(Nome, Cognome) 43 / 67

44 CHECK Introduzine al Linguaggio SQL Example CREATE TABLE Impiegato ( Matricola CHAR(6) PRIMARY KEY, Nome VARCHAR(20) NOT NULL, Cognome VARCHAR(20) NOT NULL, Stipendio FLOAT DEFAULT 1000, UNIQUE(Cognome,Nome), CHECK Stipendio 1000); 44 / 67

45 Vincoli intrarelazionali di colonna: Sintassi Sintassi di specifica dei vincoli intrarelazionali definiti su singoli attributi: [CONSTRAINT <nome vincolo>] {NOT NULL UNIQUE PRIMARY KEY CHECK(<condizione>)} 45 / 67

46 Vincoli intrarelazionali di tabella: Sintassi Sintassi di specifica dei vincoli intrarelazionali definiti su insiemi di attributi: [CONSTRAINT <nome vincolo>] { PRIMARY KEY( <nome colonna> [,... ] ) UNIQUE( <nome colonna> [,... ] ) CHECK( <condizione>)} 46 / 67

47 Vincoli di Integrita Interelazionali Vincoli di Integrita Interelazionali Vincoli che coinvolgono piu relazioni I piu significativi sono i vincoli di integrita referenziale o vincoli di riferimento In SQL i vincoli di integrita referenziale sono definiti mediante il concetto di chiave esterna o chiave esportata. 47 / 67

48 Chiave Esterna Chiave Esterna Crea un legame tra: i valori (di uno o piu ) attributi della tabella corrente (tabella interna) i valori (di uno o piu ) attributi di un altra tabella (tabella esterna) Impone che per ogni riga della tabella interna il valore dell attributo (l insieme di valori di attributi) sia presente tra i valori (l insieme di valori) di un attributo della tabella esterna dell attributo L attributo della tabella esterna a cui si fa riferimento deve essere soggetto a vincolo UNIQUE o PRIMARY KEY (vincolo di tabella se sono coinvolti piu di un attributo) 48 / 67

49 Chiave esterna REFERENCES e FOREIGN KEY SQL fornisce due costrutti di base per la definizione di chiavi esterne: 1 Costrutto REFERENCES, per la definizione di chiavi esterne su un attributo (mediante vincolo di colonna) 2 Costrutto FOREIGN KEY per la definizione di chaivi esterne su piu attributi (mediante vincolo di tabella) 49 / 67

50 Costrutto REFERENCES REFERENCES Si usa il solo costrutto REFERENCES quando il vincolo e definito su un singolo attributo Con REFERENCES (nella tabella interna) si specificano: la tabella esterna, e l attributo della tabella esterna con il quale l attributo della tabella interna deve essere legato 50 / 67

51 Uso del Costrutto REFERENCES Example CREATE TABLE dipartimento( nome dip VARCHAR(15) PRIMARY KEY, sede VARCHAR(20) NOT NULL); CREATE TABLE impiegato( matricola CHAR(6) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, nome dpt VARCHAR(15) REFERENCES dipartimento(nome dip)); 51 / 67

52 Costrutto FOREIGN KEY FOREIGN KEY Si usa il costrutto FOREIGN KEY+REFERENCES quando il vincolo e definito su un insieme di attributi Con FOREIGN KEY nella tabella interna si elencano gli attributo della tabella interna coinvolti nel legame Con REFERENCES nella tabella tabella interna si specificano la tabella esterna e gli attributi della tabella esterna con i quali gli attributi della tabella interna devono essere legati 52 / 67

53 Uso del Costrutto FOREIGN KEY Example CREATE TABLE anagrafica( codice fiscale CHAR(11) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, UNIQUE(nome, cognome)); CREATE TABLE impiegato( matricola CHAR(6) PRIMARY KEY, nome VARCHAR(20) NOT NULL, cognome VARCHAR(20) NOT NULL, nome dpt VARCHAR(15) REFERENCES dipartimento(nome dip), FOREIGN KEY(nome, cognome) REFERENCES anagrafica(nome, cognome)); 53 / 67

54 PostgreSQL PostgreSQL Sistema di gestione di basi di dati relazionali ad oggetti sviluppato in varie fasi sin dal 1977 E largamente considerato il sistema di gestione di basi di dati open source piu avanzato L interazione tra un utente e la base di dati segue il modello client-server 54 / 67

55 Lavorare in psql Client testuale psql psql e un client a riga di comando, distribuito insieme a PostgreSQL, psql, pur essend semplice, e molto potente e permette l interazione diretta con il server postgresql 55 / 67

56 Accesso all archivio Accesso all archivio psql -U <nome utente> -h <hostname> <database> Subito dopo l avvio di psql appare un breve sommario di alcuni comandi slash: \h per l aiuto su SQL \? per l aiuto sui comandi psql \q per uscire da psql una volta terminato 56 / 67

57 Comandi di slash \a Attiva e disattiva la modalita di allineamento \c[onnect] [nomedb - [utente]] Si connette ad un nuovo database \C <titolo> Titolo della tabella \d <table> Descrive la tabella (o la vista) \d{t i s v} Elenca tabelle/indici/sequenze/viste \d{p S l} Elenca permessi/tabelle di sistema/large objects \da Elenca gli aggregati 57 / 67

58 Comandi di Slash \dd [oggetto] Elenca i commenti per tabella, tipo, funzione o operatore \df Elenca le funzioni \do Elenca gli operatori \dt Elenca i tipi di dati \e [file]: Permette la modifica del buffer della query attuale o di [file] con un editor esterno \echo <testo>: scrive il testo sullo stdout \f <sep>: Cambia il separatore dei campi 58 / 67

59 Comandi di Slash \g [file] Invia la query al backend (e i risultati in [file]) \h [cmd] aiuto sulla sintassi dei comandi SQL \H Attiva o disattiva la modalita HTML (attualmente disinserita) \i <file> Legge ed esegue la query da file \l: Elenca tutti i databases \o [file]: Invia tutti i risultati della query nel [file] \p: mostra il contenuto del buffer della query attuale \q: Esce da psql 59 / 67

60 Comandi di Slash \r Cancella il buffer della query \s [file] Stampa lo storico dei comandi e lo salva in [file] \set <var> <valore> Imposta una variabile interna \t Visualizza solo le righe \T <tags> Imposta gli attributi dei tag HTML per le tabelle \unset <var> Elimina una variabile interna \w <file> scrive il buffer della query attuale su file \x Attiva e disattiva l output esteso \z Elenca i permessi di accesso alle tabelle \d![cmd] Esce sulla shell o esegue un comando 60 / 67

61 in PostgreSQL Caratteri Oltre ai domini predefiniti per le stringhe previsti dallo standard SQL, PostgreSQL accetta: character varying, o varchar (senza specificare una dimensione massima) per stringhe di lunghezza arbitraria. text per stringhe di arbitraria lunghezza 61 / 67

62 in PostgreSQL Numeri Interi Oltre ai domini predefiniti per i valori numerici interi previsti dallo standard SQL, PostgreSQL: definisce un tipo bigint che usa 8 byte. 62 / 67

63 in PostgreSQL Numeri decimali con precisione arbitraria Estensioni allo standard SQL PostgreSQL: numeric memorizza numeri decimali fino alla precisione massima consentita, senza forzare una scala numeric e decimal sono equivalenti in PostgreSQL 63 / 67

64 in PostgreSQL Numeri in virgola mobile Estensioni allo standard SQL in PostgreSQL: float(1) -- foat(24) equivale a real float(25) -- foat(53) equivale a double precision altri valori danno errore 64 / 67

65 Riepilogo e Sommario A riepilogo dei concetti introdotti, consideriamo la definizione in PostgreSQL della BD per la memorizzazione di un gruppo di persone e dei corrispondenti rapporti genitore/figlio, costituita dalle tabelle: persone(id, nome, reddito,eta,sesso) soggetta ai vincoli: id: (stringa di due caratteri) e chiave primaria nome: (stringa di 20 caratteri) non puo essere NULL reddito: (intero), in migliaia di euro, 0 per default eta: intero < 200, sesso: M oppure F genitori(figlio,genitore,) soggetta ai vincoli: figlio (stringa di 2 caratteri) chiave esterna su persone genitore (stringa di 2 caratteri) chiave esterna su persone la chiave primaria e costituita da (figlio,genitore). 65 / 67

66 Riepilogo e Sommario Example CREATE TABLE persone( id CHAR(2) PRIMARY KEY, nome VARCHAR(20) NOT NULL, reddito INT DEFAULT 0, eta SMALLINT, sesso CHAR CHECK(sesso= M OR sesso F )); CREATE TABLE genitori( figlio CHAR(2) REFERENCES persone(id), genitore CHAR(2) REFERENCES persone(id) PRIMARY KEY(figlio,genitore)); 66 / 67

67 Bibliografia ed Approfondimenti Bibliografia ed Approfondimenti R.A.Elmasri, S.B. Navathe. Sistemi di Basi di Dati Fondamenti: Capitolo 8 (8.1). Capitolo 8 (Data Types) e capitolo 5 (Data Definition) del manuale di PostgreSQL (http://www.postgresql.org/docs/manuals/) 67 / 67

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Il linguaggio SQL Basi di dati 1. Il linguaggio SQL. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine

Il linguaggio SQL Basi di dati 1. Il linguaggio SQL. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL Basi di dati 1 Il linguaggio SQL Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL Basi di dati 2 Introduzione SQL (Structured Query Language)

Dettagli

Algebra Relazionale. algebra relazionale

Algebra Relazionale. algebra relazionale Algebra Relazionale algebra relazionale Linguaggi di Interrogazione linguaggi formali Algebra relazionale Calcolo relazionale Programmazione logica linguaggi programmativi SQL: Structured Query Language

Dettagli

Dal modello concettuale al modello logico

Dal modello concettuale al modello logico Dal modello concettuale al modello logico Traduzione dal modello Entita - Associazione al modello Relazionale Ciclo di sviluppo di una base di dati (da parte dell utente) Analisi dello scenario Modello

Dettagli

Basi di Dati. S Q L Lezione 5

Basi di Dati. S Q L Lezione 5 Basi di Dati S Q L Lezione 5 Antonio Virdis a.virdis@iet.unipi.it Sommario Gestione eventi Gestione dei privilegi Query Complesse 2 Esercizio 9 (lezione 4) Indicare nome e cognome, spesa e reddito annuali

Dettagli

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002 Database, SQL & MySQL Dott. Paolo PAVAN Maggio 2002 1 Struttura RDBMS MYSQL - RDBMS DATABASE TABELLE 2 Introduzione ai DATABASE Database Indica in genere un insieme di dati rivolti alla rappresentazione

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Il linguaggio SQL: transazioni

Il linguaggio SQL: transazioni Il linguaggio SQL: transazioni Sistemi Informativi T Versione elettronica: 4.8.SQL.transazioni.pdf Cos è una transazione? Una transazione è un unità logica di elaborazione che corrisponde a una serie di

Dettagli

Manipolazione di testi: espressioni regolari

Manipolazione di testi: espressioni regolari Manipolazione di testi: espressioni regolari Un meccanismo per specificare un pattern, che, di fatto, è la rappresentazione sintetica di un insieme (eventualmente infinito) di stringhe: il pattern viene

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

PHP: form, cookies, sessioni e. Pasqualetti Veronica

PHP: form, cookies, sessioni e. Pasqualetti Veronica PHP: form, cookies, sessioni e mysql Pasqualetti Veronica Form HTML: sintassi dei form 2 Un form HTML è una finestra contenente vari elementi di controllo che consentono al visitatore di inserire informazioni.

Dettagli

Import Dati Release 4.0

Import Dati Release 4.0 Piattaforma Applicativa Gestionale Import Dati Release 4.0 COPYRIGHT 2000-2005 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati.questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Dati importati/esportati

Dati importati/esportati Dati importati/esportati Dati importati Al workspace MATLAB script Dati esportati file 1 File di testo (.txt) Spreadsheet Database Altro Elaborazione dati Grafici File di testo Relazioni Codice Database

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

Editor vi. Editor vi

Editor vi. Editor vi Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta

Dettagli

Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi

Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi TIPI DI DATO Tipicamente un elaboratore è capace di trattare domini di dati di tipi primitivi numeri naturali, interi, reali caratteri e stringhe di caratteri e quasi sempre anche collezioni di oggetti,

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

Piattaforma Applicativa Gestionale. Import dati. Release 7.0

Piattaforma Applicativa Gestionale. Import dati. Release 7.0 Piattaforma Applicativa Gestionale Import dati Release 7.0 COPYRIGHT 2000-2012 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati. Questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento.

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. Excel: le funzioni Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. DEFINIZIONE: Le funzioni sono dei procedimenti

Dettagli

Progettazione di un DB....in breve

Progettazione di un DB....in breve Progettazione di un DB...in breve Cosa significa progettare un DB Definirne struttura,caratteristiche e contenuto. Per farlo è opportuno seguire delle metodologie che permettono di ottenere prodotti di

Dettagli

Data warehouse.stat Guida utente

Data warehouse.stat Guida utente Data warehouse.stat Guida utente Versione 3.0 Giugno 2013 1 Sommario INTRODUZIONE 3 I concetti principali 4 Organizzazione dei dati 4 Ricerca 5 Il browser 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della

Dettagli

Database Manager Guida utente DMAN-IT-01/09/10

Database Manager Guida utente DMAN-IT-01/09/10 Database Manager Guida utente DMAN-IT-01/09/10 Le informazioni contenute in questo manuale di documentazione non sono contrattuali e possono essere modificate senza preavviso. La fornitura del software

Dettagli

CMN4i (Vers. 1.1.0 del 27/02/2014)

CMN4i (Vers. 1.1.0 del 27/02/2014) CMN4i (Vers. 1.1.0 del 27/02/2014) Il monitoring che permette di avere la segnalazione in tempo reale dei problemi sul vostro sistema IBM System i Sommario Caratterisitche... Errore. Il segnalibro non

Dettagli

CA RC/Update for DB2 for z/os

CA RC/Update for DB2 for z/os SCHEDA PRODOTTO CA RC/Update for DB2 for z/os CA RC/Update for DB2 for z/os CA RC/Update for DB2 for z/os (CA RC/Update) è uno strumento di gestione di dati e oggetti DB2 che consente agli amministratori

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI. Luca Carnini. Tesina presentata per la discussione del diploma di laurea in

MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI. Luca Carnini. Tesina presentata per la discussione del diploma di laurea in MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI di Luca Carnini Tesina presentata per la discussione del diploma di laurea in Ingegneria informatica Politecnico di Milano sede

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Lezione III: Oggetti ASP e interazione tramite form HTML

Lezione III: Oggetti ASP e interazione tramite form HTML Lezione III: Oggetti ASP e interazione tramite form HTML La terza lezione, come le precedenti, ha avuto una durata di due ore, di cui una in aula e l altra in laboratorio, si è tenuta alla presenza della

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

SQL. Dipartimento del Tesoro

SQL. Dipartimento del Tesoro Dipartimento del Tesoro SQL 1 Database...4 1.1 COS È UN DATABASE...4 1.2 DAGLI ARCHIVI AI DBMS...5 1.3 VANTAGGI OFFERTI DAI DBMS...6 1.4 INDIPENDENZA DEI DATI DALL APPLICAZIONE...7 1.5 RISERVATEZZA NELL

Dettagli

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email. La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

Introduzione al linguaggio C Gli array

Introduzione al linguaggio C Gli array Introduzione al linguaggio C Gli array Vettori nome del vettore (tutti gli elementi hanno lo stesso nome, c) Vettore (Array) Gruppo di posizioni (o locazioni di memoria) consecutive Hanno lo stesso nome

Dettagli

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Lab 02 Tipi semplici in C Obiettivo dell esercitazione Acquistare familiarità con i tipi di dato semplici supportati

Dettagli

Un client su arduino invia i dati acquisiti ad un database

Un client su arduino invia i dati acquisiti ad un database Un client su arduino invia i dati acquisiti ad un database PROBLEMA Si vogliono inviare, periodicamente, i dati acquisiti da alcuni sensori ad un database presente su di un server. Arduino con shield Ethernet

Dettagli

Linguaggio C++ Uso ambiente Dev C++ con creazione di progetto con scelta Basic --> Empty Project

Linguaggio C++ Uso ambiente Dev C++ con creazione di progetto con scelta Basic --> Empty Project Linguaggio C++ Uso ambiente Dev C++ con creazione di progetto con scelta Basic --> Empty Project NB: E necessario: adoperare la sintassi più evoluta per le direttive di precompilazione 1, usando come contenitore

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Manuale di Okteta. Friedrich W. H. Kossebau Alex Richardson Traduzione della documentazione: Federico Zenith

Manuale di Okteta. Friedrich W. H. Kossebau Alex Richardson Traduzione della documentazione: Federico Zenith Friedrich W. H. Kossebau Alex Richardson Traduzione della documentazione: Federico Zenith 2 Indice 1 Introduzione 6 2 Fondamentali 7 2.1 Avviare Okteta........................................ 7 2.2 Uso..............................................

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED SED è un programma in grado di eseguire delle trasformazioni elementari in un flusso di dati di ingresso,

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

2. GESTIONE DOCUMENTI NON SBN

2. GESTIONE DOCUMENTI NON SBN Istituto centrale per il catalogo unico delle biblioteche italiane e per le informazioni bibliografiche APPLICATIVO SBN-UNIX IN ARCHITETTURA CLIENT/SERVER 2. GESTIONE DOCUMENTI NON SBN Manuale d uso (Versione

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Protocolli di rete Sommario Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Configurazione statica e dinamica

Dettagli

GUIDA RAPIDA emagister-agora Edizione BASIC

GUIDA RAPIDA emagister-agora Edizione BASIC GUIDA RAPIDA emagister-agora Edizione BASIC Introduzione a emagister-agora Interfaccia di emagister-agora Configurazione dell offerta didattica Richieste d informazioni Gestione delle richieste d informazioni

Dettagli

LABORATORIO di RICERCA BIBLIOGRAFICA SUI TEST

LABORATORIO di RICERCA BIBLIOGRAFICA SUI TEST LABORATORIO di RICERCA BIBLIOGRAFICA SUI TEST emanuela.canepa@unipd.it Biblioteca di psicologia Fabio Metelli Università degli Studi di Padova Materiale didattico: guida corso Casella della biblioteca

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

Algebra di Boole ed Elementi di Logica

Algebra di Boole ed Elementi di Logica Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni

Dettagli

Lezione 9: Strutture e allocazione dinamica della memoria

Lezione 9: Strutture e allocazione dinamica della memoria Lezione 9: Strutture e allocazione dinamica della memoria Laboratorio di Elementi di Architettura e Sistemi Operativi 9 Maggio 2012 Allocazione dinamica della memoria Memoria dinamica È possibile creare

Dettagli

Progetti reali con ARDUINO

Progetti reali con ARDUINO Progetti reali con ARDUINO Introduzione alla scheda Arduino (parte 2ª) ver. Classe 3BN (elettronica) marzo 22 Giorgio Carpignano I.I.S. Primo LEVI - TORINO Il menù per oggi Lettura dei pulsanti Comunicazione

Dettagli

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test Prefazione, Contenuto Parte 1: Sviluppo di programmi Parte 2: Uso e test SIMATIC Parte 3: Descrizione del linguaggio Programmazione di blocchi Appendici Glossario, Indice analitico Manuale Numero di ordinazione

Dettagli

Così come le macchine meccaniche trasformano

Così come le macchine meccaniche trasformano DENTRO LA SCATOLA Rubrica a cura di Fabio A. Schreiber Il Consiglio Scientifico della rivista ha pensato di attuare un iniziativa culturalmente utile presentando in ogni numero di Mondo Digitale un argomento

Dettagli

sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon)

sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon) Sed & Awk Sed e Awk sed: editor non interattivo di file di testo (1974 nei Bell Labs come evoluzione di grep, Lee E. McMahon) awk: linguaggio per l'elaborazione di modelli orientato ai campi (1977, Bell

Dettagli

Trattamento aria Regolatore di pressione proporzionale. Serie 1700

Trattamento aria Regolatore di pressione proporzionale. Serie 1700 Trattamento aria Serie 7 Serie 7 Trattamento aria Trattamento aria Serie 7 Serie 7 Trattamento aria +24VDC VDC OUTPUT MICROPROCESS. E P IN EXH OUT Trattamento aria Serie 7 Serie 7 Trattamento aria 7 Trattamento

Dettagli

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete.

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete. Premessa. La traccia di questo anno integra richieste che possono essere ricondotte a due tipi di prove, informatica sistemi, senza lasciare spazio ad opzioni facoltative. Alcuni quesiti vanno oltre le

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN per Expert NANO 2ZN Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie Expert NANO 2ZN Nome documento: MODBUS-RTU_NANO_2ZN_01-12_ITA Software installato: NANO_2ZN.hex

Dettagli

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale.

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale. l Editor vi Negli ambienti Unix esistono molti editor di testo diversi; tuttavia vi è l unico che siamo sicuri di trovare in qualsiasi variante di Unix. vi (visual editor) è stato scritto per essere utilizzabile

Dettagli

Lab. 1 - Introduzione a Matlab

Lab. 1 - Introduzione a Matlab Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

1) Le Espressioni regolari

1) Le Espressioni regolari ESPRESSIONI REGOLARI e FILTRI SED, GREP e AWK 1) Le Espressioni regolari Un'espressione regolare è un modello che descrive un insieme di stringhe. Le espressioni regolari sono costruite, in maniera analoga

Dettagli

La fase di realizzazione. La fase di realizzazione (cont.) Traduzione in Java del diagramma degli use case

La fase di realizzazione. La fase di realizzazione (cont.) Traduzione in Java del diagramma degli use case Università degli Studi di Roma La Sapienza Corso di Laurea in Ingegneria dell Informazione Sede di Latina Corso di Laurea in Ingegneria dell Informazione Consorzio Nettuno La fase di realizzazione si occupa

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

MANUALE Gest-L VERSIONE 3.2.3

MANUALE Gest-L VERSIONE 3.2.3 MANUALE Gest-L VERSIONE 3.2.3 Installazione GEST-L 4 Versione per Mac - Download da www.system-i.it 4 Versione per Mac - Download da Mac App Store 4 Versione per Windows 4 Prima apertura del programma

Dettagli

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); } import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda * @author D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda * @version 26/02/2010 * VETTORE DINAMICO

Dettagli

BIBLIOWIN 5.0WEB Versione 5.0.2

BIBLIOWIN 5.0WEB Versione 5.0.2 BIBLIOWIN 5.0WEB Versione 5.0.2 Premessa. In questa nuova versione è stata modificata la risoluzione (dimensione) generale delle finestre. Per gli utenti che navigano nella modalità a Finestre, la dimensione

Dettagli

SIASFi: il sistema ed il suo sviluppo

SIASFi: il sistema ed il suo sviluppo SIASFI: IL SISTEMA ED IL SUO SVILUPPO 187 SIASFi: il sistema ed il suo sviluppo Antonio Ronca Il progetto SIASFi nasce dall esperienza maturata da parte dell Archivio di Stato di Firenze nella gestione

Dettagli

Principali funzionalità di Tustena CRM

Principali funzionalità di Tustena CRM Principali funzionalità di Tustena CRM Importazione dati o Importazione da file dati di liste sequenziali per aziende, contatti, lead, attività e prodotti. o Deduplica automatica dei dati importati con

Dettagli

Funzioni. Corso di Fondamenti di Informatica

Funzioni. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Funzioni Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e dei

Dettagli

Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment

Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio IDE = Integrated Development Environment Gerardo Pelosi 01 Ottobre 2014 Pagina 1 di 8 Dev-C++ - Installazione Potete

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

ESEMPI DI FORM (da www.html.it)

ESEMPI DI FORM (da www.html.it) ESEMPI DI FORM (da www.html.it) Vediamo, nel particolare, tutti i tag che HTML 4.0 prevede per la creazione di form. Questo tag apre e chiude il modulo e raccoglie il contenuto dello stesso,

Dettagli

Guida rapida di IBM SPSS Statistics 20

Guida rapida di IBM SPSS Statistics 20 Guida rapida di IBM SPSS Statistics 20 Nota: Prima di utilizzare queste informazioni e il relativo prodotto, leggere le informazioni generali disponibili in Note legali a pag. 162. Questa versione si applica

Dettagli

AlboTop. Software di gestione Albo per Ordini Assistenti Sociali

AlboTop. Software di gestione Albo per Ordini Assistenti Sociali AlboTop Software di gestione Albo per Ordini Assistenti Sociali Introduzione AlboTop è il nuovo software della ISI Sviluppo Informatico per la gestione dell Albo professionale dell Ordine Assistenti Sociali.

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

ELENCO MIGLIORIE INCLUSE DALLA 10.0.0 ALLA 14.3.0

ELENCO MIGLIORIE INCLUSE DALLA 10.0.0 ALLA 14.3.0 ELENCO MIGLIORIE INCLUSE DALLA 10.0.0 ALLA 14.3.0 NUOVE PRINCIPALI FUNZIONALITÀ 14.3.0 GENERAZIONE FILE EFFETTI IN FORMATO SEPA Dal programma 'Incassi e Pagamenti Automatici' è ora possibile generare file

Dettagli

ASTA IN GRIGLIA PRO. COSA PERMETTE DI FARE (per ora) Asta In Griglia PRO:

ASTA IN GRIGLIA PRO. COSA PERMETTE DI FARE (per ora) Asta In Griglia PRO: ASTA IN GRIGLIA PRO Asta in Griglia PRO è un software creato per aiutare il venditore Ebay nella fase di post-vendita, da quando l inserzione finisce con una vendita fino alla spedizione. Il programma

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it Zabbix 4 Dummies Dimitri Bellini, Zabbix Trainer Quadrata.it Relatore Nome: Biografia: Dimitri Bellini Decennale esperienza su sistemi operativi UX based, Storage Area Network, Array Management e tutto

Dettagli

Progettazione di Database

Progettazione di Database Progettazione di Database Progettazione Concettuale: strutturazione della realtà che si vuole rappresentare secondo uno schema concettuale Dallo schema concettuale si ricava lo schema del database relazionale

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli