ADNKRONOS

Tecnologia

Amazon Books

WallPapers

Driver Image Banner 728 x 90

Indice articoli

PHP e MySQL

Cosa è un database

Un database è una struttura logica con la quale noi organizziamo i dati facenti parte del "mondo " che vogliamo descrivere. Per fare un esempio, se vogliamo descrivere il mondo degli utenti di una data compagnia telefonica, questi saranno organizzati in un database che comunemente chiamiamo "elenco telefonico" il cui supporto è solitamente cartaceo, che presenta tra le tabelle che lo costituiscono quella caratterizzata dagli attributi Nome,Cognome,Indirizzo, numero telefonico.

 

 

 

Noi siamo o dovremmo essere degli informatici e quindi useremo come supporto un computer e utilizzeremo per memorizzare i dati un DBMS cioè un "database management system".

esistono diversi DBMS commerciali ed open source in commercio e si differenziano principalmente per il modello dei dati su cui si basano:

- Gerarchico;

- Reticolare;

- Relazionale.

 

La recente storia dello sviluppo tecnologico ha visto il prevalere del modello relazionale sugli altri modelli ed il fiorire di proposte di DBMS con caratteristiche sempre più avanzate e complete.

 

Per descrivere in maniera molto semplicistica il modello relazionale possiamo affermare che questo ci consente di rappresentare la realtà che vogliamo descrivere attraverso l'utilizzo di tabelle in relazione tra di loro.

 

Le tabelle saranno ovviamente costituite da colonne e da righe.

Le colonne rappresentano le caratteristiche dell'elemento che vogliamo memorizzare, i così detti attributi, (per rifarci all'esempio visto in precedenza gli attributi dell'elemento utente telefonico sono nome, cognome, indirizzo, numero telefonico).

Le righe rappresentano gli elementi dell'insieme che rappresentiamo con la tabella (nel nostro caso gli utenti telefonici, un utente una riga)

 

Nome

 

Cognome

 

Indirizzo

 

Numero telefono

Mario

Rossi

Via dei platani, 5

06 5611892

Paolo

Bianchi

Via delle rose, 4

06 7834567

Carlo

Neri

Via dei ciclamini, 23

06 3456780

 

Un database può contenere più di una tabella con strutture differenti. Queste tabelle possono però avere informazioni incrociate e correlate da un certo legame concettuale. Questi legami li possiamo definire attraverso relazioni (da cui il nome database relazionale).

Accesso ai database

Una delle caratteristiche più apprezzate del PHP, è l'estrema semplicità e il grande numero di funzioni con cui è possibile interfacciarsi con la più gran varieta di motori per database.

Indipendentemente dal motore di database utilizzato, accedere ad un database da un'applicazione, fondamentalmente consiste di tre passi:

  • Connessione al database
  • interazione con il database (usualmente con il linguaggio SQL)
  • chiusura della connessione

 

Connessione

Viene stabilito il collegamento tra il database e l'applicazione. Il server database può risiedere nella stessa macchina in cui risiede l'applicazione ed è in esecuzione il PHP o su una differente alla quale accederemo tramite rete. La fase di connessione comprende anche la fase di autenticazione, nella quale forniamo al DBMS (database management system) il nostro nome e password.

 

Interazione

E' la parte in cui noi operiamo sul database secondo le specifiche della nostra applicazione oppure per gestire il database stesso con i tools messi a disposizione da questo.

Possiamo operare sia a livello di schema del database ( per esempio creando, modificando o cancellando tabelle), sia a livello di veri e propri dati (per esempio cancellando, inserendo, modificando righe di tabelle ). per comunicare con il DBMS utilizziamo (di solito) il linguaggio SQL (Structured Query Language) sia per mezzo dei tools forniti dal DBMS sia attraverso le funzioni di accesso incluse nel PHP.

 

Chiusura della connessione

In quest'ultima fase non facciamo altro che terminare la sessione di lavoro, interrompendo la connessione con il server database. Da questo momento in poi non sarà possibile effettuare altre operazioni sul database a meno di non ripristinare la connessione.