Home arrow Hacks arrow Installazioni Multiple: Condivisione Generalizzata arrow 3 - Logica della soluzione
3 - Logica della soluzione
Installazioni Multiple: Condivisione Generalizzata

La soluzione proposta in questa guida si basa, come già accennato, su una delle nuove funzionalità introdotte in MySQL a partire dalla versione 5: le viste.

Ma che cos'è una vista? Una vista altro non è che una particolare Query, pensata per mascherare/filtrare i contenuti delle tabelle ed impedire che qualsiasi utente sia libero di accedervi e modificarne il contenuto. Una vista crea, in un certo senso, un alias, un collegamento regolamentato; oltre quindi ad una comune
selezione degli elementi, include in sè l'aspetto legato alla regolamentazione degli accessi e si differenzia, inoltre, dalle normali query di selezione, perchè è memorizzata nel sistema. La definizione di una vista appartiene al database in cui si definisce, ma specificando un diverso nome di database è
possibile memorizzare la vista in un database diverso: la notazione da utilizzare è nome_database.nome_vista.

Di seguito riportiamo la sintassi dell'istruzione CREATE utilizzata per creare una vista, così come riportato nel manuale di riferimento di MySQL:

CREATE
[OR REPLACE]
[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
[DEFINER = { user | CURRENT_USER }]
[SQL SECURITY { DEFINER | INVOKER }]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]

La soluzione si basa, quindi, sull'idea di sostiuire alcune delle tabelle della seconda installazione con delle viste alle corrispondenti nella prima. Si crea un collegamento, un alias, per alcuni elementi e Joomla! non noterà la differenza, ma al tempo stesso si potranno mantenere distinti altre parti.

Tabelle e viste fanno parte dello stesso spazio dei nomi in un database MySQL: non è possibile, quindi, all'interno del medesimo database avere viste o tabelle con lo stesso nome.

 

Menu Manuali

Hacks