MS Office Access 2007 Basi di dati - Fondamenti Cos’è MS Access Access è un sistema per creare e gestire database e come tale è uno strumento per chi si occupa di gestire dati con i quali seguire, per esempio, i prelievi e i versamenti in un magazzino, gli ordini di vendita di una società commerciale o le commesse in lavorazione di un’impresa di servizi. Cos’è MS Access E’ un programma di gestione di database o DBMS Offre un ambiente grafico facile da usare Con gli strumenti di cui è dotato, permette di sviluppare semplici database o vere e proprie applicazioni gestionali fondate sui database. Cos’ è un Database? Il Database è un archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati. Un esempio di Database di facile comprensione è una ipotetica rubrica del telefono. Questa è composta dall’insieme di dati, nome, cognome, numero di telefono di una serie di persone, organizzati in una struttura, definita tabella. Le Tabelle Le tabelle e con loro le query che ne derivano direttamente, sono la pietra angolare sulla quale si fondano tutti i database. E' quindi necessario capire bene come funzionano e come sono fatte per poter utilizzare Access. Record e Campi Una tabella si compone di Righe, strutturalmente tutte uguali, che vengono dette comunemente Record. Ogni record è articolato in un numero predefinito di segmenti, che sono detti campi. Dal momento che i record vengono disposti verticalmente, uno sotto l'altro, i loro campi definiscono le Colonne di una tabella. L'Intestazione I campi si distinguono uno dall'altro in base a un nome che viene loro attribuito quando si crea una tabella e l'insieme di questi nomi costituisce l'Intestazione della tabella, che NON è una riga della tabella, ma viene gestita a parte dal sistema. Struttura delle Tabelle Campi Campo 1 Campo 2 Campo 3 Record Entità Campo 4 Righe Colonne Attributi Una tabella si usa per immagazzinare in maniera ordinata dati relativi una specifica realtà. Ogni riga di una tabella rappresenta un'entità e nei campi si scrivono dati relativi agli attributi di quell'entità: per esempio, le entità di una tabella Prodotti sono i singoli prodotti gestiti da un'azienda e per ciascun prodotto si decide quali attributi mettere nei campi dei record, per esempio nome, unità di misura, prezzo unitario, colore e così via. Per poter utilizzare tabelle in un database, devono essere costruite nel rispetto di alcuni vincoli, che le rendono strutturalmente simili, anche se hanno contenuti diversi. Se la tabella per esempio contenesse 1000 record si potrebbe consultare più agevolmente se i record fossero ordinati in base al cognome o alla qualifica ma, siccome questi attributi sono affastellati in un solo campo, bisognerebbe creare un programma per isolare il cognome o la qualifica e poi procedere a ordinare i record in base all'attributo così identificato! Dal momento che sono tantissime le realtà e le serie di eventi che si possono comodamente rappresentare mediante tabelle, l'approccio giusto non consiste nello sviluppare programmi adatti alle tabelle, ma al contrario, nel creare tabelle adeguate a un unico programma, cioè a un sistema di gestione di database (DBMS) nel nostro caso Access La Normalizzazione Per poterle gestire vantaggiosamente con Access, le tabelle devono avere una struttura uniforme, che rispetti alcune regole, chiamate forme normali nel gergo dei database, per cui si parla genericamente di normalizzazione delle tabelle. Univocità Il primo e fondamentale criterio è quello dell'univocità. Ogni record deve rappresentare una e una sola entità, cioè non possono esistere duplicati. Per quanto riguarda i campi, ciascuno di essi deve contenere uno e un solo attributo. Atomicità In questo modo tutti i record sono diversi l'uno dall'altro, non ci sono doppioni e ogni campo contiene solo un attributo, ovvero è atomico La Chiave Primaria Per facilitare le operazioni di univocità e atomicità fin qui descritti, ma anche per ridurre il numero di letture necessarie per ciascun record, generalmente si identifica in ogni tabella le colonne che potrebbero avere un contenuto diverso in ogni riga. Fra queste se ne sceglie una che assume il ruolo e il nome di chiave primaria. Una tabella può avere una sola chiave primaria e la sua presenza garantisce l'univocità dei record; Può essere semplice quando formata da una sola colonna composta quando data dalla combinazione di più colonne. ...Esempio Tuttavia, quando la natura dei dati raccolti in una tabella può creare ambiguità di questo genere... è opportuno aggiungere una nuova colonna alla struttura della tabella, creando con questa una chiave primaria.