giovedì 27 novembre 2008

SOFTWARE PER LA CREAZIONE DI PAGINE WEB PERSONALI: UNA REVIEW

Oggi, ci sono diversi modi per creare autonomamente e in un modo molto semplice una propria pagina web. Ad esempio, un software è NV (New View), ed è un sistema per la creazione di siti web per utenti Linux, Microsoft e Apple, ed è facile da usare anche perchè possiede particolari caratteristiche:

  • modifiche wysiwyg delle pagine (si crea un sito web inn maniera molto facile come scrivere una semplice lettera)
  • sistema di gestione file integrato via FTP(permette all'utente di modificare le pagine web direttamente dal proprio sito).

Un altro programma, forse quello più usato è FRONTPAGE, prodotto da Microsoft.Frontpage permette di creare pagine web in modo interattivo, traducendo i comandi interattivi in codice HTML.
Altri programmi sono disponibili in rete e sono utilizzabili anche dagli utenti meno esperti. Tra questi possiamo ricordare: IPERTESTA (ossia un blocco note avanzato con molte funzioni specifiche per il linguaggio HTML,inoltre dà la possibilità di creare tabelle, form). DREAMWEAVER, (prodotto da macromedia).

Un altro programma, anche questo molto semplice da utilizzare è EASYWEBEDITOR. Non servono competenze tecniche e c'è tutto quello che occorre per la creazione del sito Web.

mercoledì 26 novembre 2008

RELAZIONI, INTEGRITA' REFERENZIALE NEI DBMS E RIDONDANZA

RELAZIONI
Un database relazionale è costituito da un insieme di tabelle legate tra loro da relazioni.
Lo scopo delle relazioni consiste nell’evitare di inserire più volte gli stessi dati.
Esistono tre tipi di relazione:
-uno a uno: ad un record corrisponde un solo record;
-uno a molti: ad un record corrispondono più record ma non il contrario;
-molti a molti: ad un record corrispondono più record e viceversa.
ESEMPIO DI RELAZIONI



INTEGRITA' REFERENZIALE NEI DBMS
Le relazioni rendono l’utilizzo delle tabelle flessibile e potente, ma se non vengono gestite correttamente possono creare problemi. Perciò, è importante impostare l’integrità referenziale, ossia un insieme di controlli effettuati dal programma che gestisce il database durante la registrazione, la cancellazione e l’aggiornamento dei record. Questi controlli permettono di garantire che le relazioni tra tabelle siano sempre valide.
Inoltre, le regole di integrità referenziale impediscono agli utenti del database di interrompere le associazioni tra le colonne correlate. Ad esempio un vincolo di integrità referenziale può richiedere che tutti i dipendenti siano assegnati a uno dei reparti dell'azienda, memorizzati in un'altra tabella. In tal modo nessun dipendente potrà essere assegnato a un reparto inesistente.

RIDONDANZA
Si ha ridondanza dei dati ogni volta che vengono memorizzati inutilmente dei dati ripetuti.

martedì 25 novembre 2008

SQL: ISTRUZIONI DI BASE PER ESTRAZIONE, INSERIMENTO,UPDATE DEI DATI

SQL ha tre aspetti fondamentali:
1) l’estrazione di informazioni (QUERY)
2) l’inserimento dei dati (INSERT TO)
3) la modifica dei dai (UPDATE)
La prima si rivolge più all'utente, mentre le altre due ai sistemisti.

  • Il comando SELECT ha la funzione di estrarre i dati in modo mirato dal database.
  • il comando INSERT ha la funzione di inserire i dati nelle tabelle. (INSERT TO…).
  • il comando UPDATE ha la funzione di modificare i dati nelle tabelle. Il nome di ogni campo che deve essere modificato va dopo la parola SET e deve essere seguito dal simbolo “=” e dal nuovo valore che deve assumere
    esempio: UPDATE nome_tabella
    SET nome_campo=valore1=nuovo
  • il comandoDELETE ha la funzione di cancellare i dati dalle tabelle
    esempio: DELETE FROM nome_talella
    WHERE nome_campo=valore
    ovviamente una tabella priva di clausola WHERE cancella tutte le righe della tabella specificata, tuttavia esiste un altro modo per svuotare completamente una tabella, con il comando TRUNCATE TABLE.
    come detto precedentemente(post: Cosa è SQL)ci sono state diverse critiche sull’utilizzo dell’SQL ovvero il suo linguaggio è troppo complesso e non fornisce un modo standard per suddividere un lungo comando in comandi piu’ brevi.

APPROFONDIMENTI SU SQL: CLAUSOLE WHERE, HAVING, GROUP BY

L'utilizzo delle clausole Where, Having, Group by consente di effettuare delle ricerche specifiche; infatti in alcuni casi può essere necessario escludere singole righe dai gruppi (utilizzando una clausola WHERE) prima di applicare una condizione ai gruppi(utilizzando una clausola HAVING)
WHERE consente di restringere il campo della ricerca, ad esempio il comando:
SELECT *FROM elenco libri WHERE poeta= 'Giacomo Leopardi'; restituisce tutti i campi della tabella elenco libri in cui il campo poeta è uguale a Giacomo Leopardi.
La clausola WHERE può utilizzare operatori logici come OR, AND, NOT, e operatori di confronto come BETWEEN, LIKE.
Inoltre, la clausola WHERE viene applicata prima alle singole righe nelle tabelle o negli oggetti con valori di tabella nel riquadro Diagramma.
Successivamente viene applicata la clausola HAVING alle righe del gruppo di risultati.
Quindi, la clausola HAVING è analoga alla clausola WHERE ma è applicabile solo ai gruppi come insieme, ossia alle righe nel gruppo di risultati che rappresentano i gruppi, mentre la clausola WHERE è applicabile a righe singole. Una query può contenere sia una clausola WHERE che una clausola HAVING.
La clausola HAVING può essere applicata solo alle colonne presenti anche nella clausola GROUP BY o in una funzione di aggregazione.
GROUP BY e una clausola che raggruppa i dati in funzione del campo specificato, consentendo di effettuare operazioni di conteggio dei risultati all’interno di una stessa query.

ESEMPIO DI CLAUSOLA WHERE, HAVING, GROUP BY: Si supponga ad esempio di unire le tabelle titoli ed editori per creare una query in cui sia visualizzato il prezzo medio dei libri per un gruppo di editori, limitando la ricerca a un gruppo specifico di editori, ad esempio quelli dell'Italia, e a un prezzo medio maggiore di 10 euro.In questo caso, prima di calcolare il prezzo medio è possibile stabilire la prima condizione con una clausola WHERE che escluda tutti gli editori che non si trovano in Italia. La seconda condizione richiede una clausola HAVING, in quanto la condizione è basata sui risultati del raggruppamento e del riepilogo di dati. L'istruzione SQL risultante sarà analoga alla seguente:

SELECT titoli.edit_id, AVG(titoli.prezzo)
FROM titoli INNER JOIN editori
ON titoli.edit_id = editori.edit_id
WHERE editori.nazione = 'IT'
GROUP BY titoli.edit_id
HAVING AVG(prezzo) > 10

giovedì 20 novembre 2008

CREAZIONE DI UN DATA SOURCE CON DATA TIME, CREAZIONE DI JOIN ARBITRARIE MEDIANTE LO STRUMENTO VISUALE DI DATA TIME,REPORT DA TABELLE MULTIPLE,DATAGRID

Con Data Time è possibile creare un report che prende i suoi dati da un tabellone molto grande che è il risultato di una join arbitraria tra tabelle differenti. Si parla a tale proposito di Data Source.Il Data Source quindi non è altro che un insieme di formule di SQL.
Per la realizzazione del nuovo report bisogna seguire dei passaggi:

  • Lanciare Data Time
  • New project
  • New connection (scegliendo access)
  • Create and save connection
  • New data source e scegliamo le nostre tabelle (come Order details e Order)
  • Devo prendere i campi che mi interessano e stabilisco la chiave primaria
  • Devo stabilire la mia relazione che è da 1 a n e lo posso fare manualmente trascinando oppure tasto destro, seleziono" Map DBMS relationships on objects on designer panel" ( cioè automaticamente il programma fa una mappatura di tutte le possibile relazioni che io posso realizzare)
  • Cliccando "check out" "manual refine"mi viene visualizzata la sintassi della mia query
  • Salvo cliccando Save
  • Torno alla prima pagina di data time e clicco su Data Sources
  • Clicco su New Report
  • Da qui continuo come se stessi facendo un report con una sola tabella.

VANTAGGI E SVANTAGGI DEL SOFTWARE PER LA DISTRIBUZIONE DELL'INFORMAZIONE SUL WEB:PER I CREATORI E PER I FRUITORI DEI CONTENUTI

In questi ultimi tempi per la diffusione delle informazioni si sta utilizzando il Web, ma come tutti gli strumenti esistono vantaggi e svantaggi sia per i creatori sia per i fruitori dei contenuti.
Vantaggi per i creatori:
- la produzione di software libero pone l’ accento sulle persone che scrivono il codice e non su un marchio particolare;
- la produzione di software richiede la disponibilità di un altro software, per esempio i compilatori.
Vantaggi per i fruitori:
- il software può essere modificato per adottarlo alle proprie esigenze;
- la concorrenza mette a disposizione il software a costi inferiori;
- la concorrenza consente di scegliere liberamente il fornitore;
- con le dovute conoscenze il software può essere verificato, soprattutto quando si utilizza in ambiti critici dal punto di vista della sicurezza;
- il software può essere studiato, consentendo la diffusione della conoscenza.
- normalizzazione dei dati(integrità dei dati, integrità referenziale)
Svantaggi per i creatori:
- il software libero non consente di mantenere una posizione privilegiata nel mercato;
- i margini di reddito sono ridotti per l’ assenza di ” rendite di posizione”.
Svantaggi per i fruitori:
- il software libero richiede una maggiore consapevolezza sul piano informatico;
- il software libero richiede una maggiore consapevolezza sul funzionamento del singolo prodotto software e sull’ organizzazione del sistema operativo;
- Il software non rispetta le norme di accessibilità.

ANSI SQL

L'American National Standards Institute - Istituto Americano di Normalizzazione, più noto come ANSI è un'organizzazione privata non a fini di lucro che produce standard industriali per gli Stati Uniti.
Adottò SQL come standard fin dal 1986, senza apportare modifiche sostanziali alla versione inizialmente sviluppata da IBM.
ANSI SQL è l'acronimo di Structured Query Language della American National Standard Institute e rappresenta un tentativo di standardizzazione del linguaggio SQL nelle diverse piattaforme, può essere considerato come uno sforzo di unitarietà che avrebbe dovuto permettere a tutti di comunicare facilmente in quanto "si parla la stessa lingua".