Esercizio per il 06/05/2010
1) creare la tabella materia
fatta dai campi ID e NOME;
2)nella tabella titolo
aggiungere la chiave esterna materia_id;
3)fare la jsp che inserisce un titolo con la materia
scelta da un menu dropdown fatto con la select.
--------------------------------------------------------------------------------------
1)create table materia( id int not null, nome varchar(15), primary key( id));
2)alter table titolo add materia_id int;
3)da svolgere
giovedì 6 maggio 2010
giovedì 11 febbraio 2010
giovedì 10 dicembre 2009
mercoledì 25 novembre 2009
Esercizi per casa
ES n° 10 pagina 233
Tabella
Anagrafica (Nome, Cognome, Matricola, Nascita, Indirizzo, CodiceDipartimento, NomeDipartimento, IndirizzoDipartimento, Stipendio)
Dipendenze
CodiceDipartimento → (NomeDipartimento, IndirizzoDipartimento) ← Seconda forma normale.
Tabelle
Dipartimento (CodiceDipartimento, NomeDipartimento, IndirizzoDipartimento)
Anagrafica (Matricola, Nome, Cognome, Nascita, Indirizzo, CodiceDipartimento)
ES n° 11 pagina 233
Tabelle
Esami-1 (Corso, Matricola, Data, Voto, NomeCorso)
Esami-2 (Corso, Matricola, Data, VotoInCifre, VotoInLettere)
Dipendenze Esami-1
(Matricola, Corso) → Voto ← Seconda forma normale.
Corso → NomeCorso ← Seconda forma normale.
Tabelle Esami-1
Corso (Corso, NomeCorso)
Matricola (Matricola, Voto, Corso)
Esami-1 (Matricola, Data, Corso)
Dipendenze Esami-2
(Matricola, Corso) → (VotoInCifre, VotoInLettere) ← Seconda forma normale.
VotoInCifre → VotoInLettere ← Terza forma normale.
VotoInLettere → VotoInCifre ← Terza forma normale.
(Matricola, Corso) → VotoInCifre
(Matricola, Corso) → VotoInLettere
Per togliere la terza forma normale, scelgo come determinante VotoInCifre. (Entrambi si determinano a vicenda, pertanto ne scelgo uno.)
Tabelle Esami-2
Matricola (Matricola, Corso)
VotoInCifre (VotoInCifre, VotoInLettere)
Esami-2 (Corso, Matricola, Data)
ES n° 12 pagina 233
Tabella
Libro (CodiceDelLibro, NomeAutore, TitoloLibro, NomeEditore, IndirizzoEditore, Prezzo, AnnoEdizione)
Normalizzazione :
Prima forma normale : Non vi sono dati ripetuti.
Seconda forma normale : Cerco le dipendenze.
Dipendenze
IndirizzoEditore → NomeEditore ← Seconda forma normale. Perché l'indirizzo può avere solo un editore con quel nome.
Terza forma normale : Non ci sono dipendenze transitive.
Tabelle
Editore (NomeEditore, IndirizzoEditore)
Libro (CodiceDelLibro, NomeAutore, TitoloLibro, IndirizzoEditore, Prezzo, AnnoEdizione)
ES n° 13 pagina 233
Materiali (Codice, Descrizione, Fornitore, Prezzo, IndirizzoFornitore, Quantità, PosizioneInMagazzino, Acciaio, NomeAcciaio, ResistenzaAcciaio, NomeFornitore)
Dipendenze
Acciaio → (NomeAcciaio, ResistenzaAcciaio) ← Seconda regola normale.
NomeAcciaio → ResistenzaAcciaio ← Terza regola normale.
Acciaio → ResistenzaAcciaio ← Terza regola normale.
Fornitore → (IndirizzoFornitore, NomeFornitore) ← Seconda regola normale.
Tabelle
Acciaio (Acciaio, NomeAcciaio)
QualitàAcciaio (NomeAcciaio, ResistenzaAcciaio)
Fornitore (Fornitore, IndirizzoFornitore, NomeFornitore)
Materiali (Codice, Descrizione, Fornitore, Prezzo, Quantità, PosizioneInMagazzino, Acciaio)
Tabella
Anagrafica (Nome, Cognome, Matricola, Nascita, Indirizzo, CodiceDipartimento, NomeDipartimento, IndirizzoDipartimento, Stipendio)
Dipendenze
CodiceDipartimento → (NomeDipartimento, IndirizzoDipartimento) ← Seconda forma normale.
Tabelle
Dipartimento (CodiceDipartimento, NomeDipartimento, IndirizzoDipartimento)
Anagrafica (Matricola, Nome, Cognome, Nascita, Indirizzo, CodiceDipartimento)
ES n° 11 pagina 233
Tabelle
Esami-1 (Corso, Matricola, Data, Voto, NomeCorso)
Esami-2 (Corso, Matricola, Data, VotoInCifre, VotoInLettere)
Dipendenze Esami-1
(Matricola, Corso) → Voto ← Seconda forma normale.
Corso → NomeCorso ← Seconda forma normale.
Tabelle Esami-1
Corso (Corso, NomeCorso)
Matricola (Matricola, Voto, Corso)
Esami-1 (Matricola, Data, Corso)
Dipendenze Esami-2
(Matricola, Corso) → (VotoInCifre, VotoInLettere) ← Seconda forma normale.
VotoInCifre → VotoInLettere ← Terza forma normale.
VotoInLettere → VotoInCifre ← Terza forma normale.
(Matricola, Corso) → VotoInCifre
(Matricola, Corso) → VotoInLettere
Per togliere la terza forma normale, scelgo come determinante VotoInCifre. (Entrambi si determinano a vicenda, pertanto ne scelgo uno.)
Tabelle Esami-2
Matricola (Matricola, Corso)
VotoInCifre (VotoInCifre, VotoInLettere)
Esami-2 (Corso, Matricola, Data)
ES n° 12 pagina 233
Tabella
Libro (CodiceDelLibro, NomeAutore, TitoloLibro, NomeEditore, IndirizzoEditore, Prezzo, AnnoEdizione)
Normalizzazione :
Prima forma normale : Non vi sono dati ripetuti.
Seconda forma normale : Cerco le dipendenze.
Dipendenze
IndirizzoEditore → NomeEditore ← Seconda forma normale. Perché l'indirizzo può avere solo un editore con quel nome.
Terza forma normale : Non ci sono dipendenze transitive.
Tabelle
Editore (NomeEditore, IndirizzoEditore)
Libro (CodiceDelLibro, NomeAutore, TitoloLibro, IndirizzoEditore, Prezzo, AnnoEdizione)
ES n° 13 pagina 233
Materiali (Codice, Descrizione, Fornitore, Prezzo, IndirizzoFornitore, Quantità, PosizioneInMagazzino, Acciaio, NomeAcciaio, ResistenzaAcciaio, NomeFornitore)
Dipendenze
Acciaio → (NomeAcciaio, ResistenzaAcciaio) ← Seconda regola normale.
NomeAcciaio → ResistenzaAcciaio ← Terza regola normale.
Acciaio → ResistenzaAcciaio ← Terza regola normale.
Fornitore → (IndirizzoFornitore, NomeFornitore) ← Seconda regola normale.
Tabelle
Acciaio (Acciaio, NomeAcciaio)
QualitàAcciaio (NomeAcciaio, ResistenzaAcciaio)
Fornitore (Fornitore, IndirizzoFornitore, NomeFornitore)
Materiali (Codice, Descrizione, Fornitore, Prezzo, Quantità, PosizioneInMagazzino, Acciaio)
giovedì 19 novembre 2009
Progettazione Database
Progettare un Database con i gruppi musicali internazionali
Si vuole memorizzare tramite l’utilizzo del database il nome di gruppi musicali, conoscerne una storia, il numero dei componenti, i ruoli all’interno della band, la provenienza del gruppo, il luogo del tour musicale, il genere di musica che suonano, la loro discografia; Scorrendo un menù a tendina visualizzo i nomi delle varie band, e poi posso risalire ad ogni singola informazione che li riguarda.
Componenti del gruppo :
Matteo Gastaldi (Leader)
Stefano Biscarini
Gruppi musicali : Linkin Park - Sum 41 - Blink 182 – Zebrahead – Queen - Dream Teather – Dragonforce - Deep Purple - Guns N’ Roses - Led Zeppelin - Metallica - Iron Maiden - Slipknot - System of a Down - Pink Floyd – Nirvana - Pantera .
Caratteristiche band :
· Nome
· N.Componenti
· Ruoli all’interno della band
· Provenienza
· Luogo tour
· Genere
· Discografia
lunedì 16 marzo 2009
Esercitazione Java
/*Matteo Gastaldi 4ALE*/
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Calcolatrice{
JFrame f=new JFrame("Calcolatrice Autore : Matteo Gastaldi");
JLabel l1=new JLabel("1° operando :");
JLabel l2=new JLabel("2° operando :");
JLabel l3=new JLabel("risultato : ");
JTextField f1=new JTextField();
JTextField f2=new JTextField();
JButton b5=new JButton("clear");
JButton b1=new JButton("+");
JButton b2=new JButton("-");
JButton b4=new JButton("/");
JButton b3=new JButton("X");
JButton b6=new JButton("=");
JLabel risultato=new JLabel();
JPanel p1=new JPanel();
JPanel p2=new JPanel();
char valori;
public Calcolatrice(){
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400,400);
p1.setLayout(new GridLayout(3,2));
p2.setLayout(new GridLayout(2,3));
p1.add(l1);
p1.add(f1);
p1.add(l2);
p1.add(f2);
p1.add(l3);
p1.add(risultato);
p2.add(b5);
p2.add(b1);
p2.add(b2);
p2.add(b4);
p2.add(b3);
p2.add(b6);
f.add (BorderLayout.NORTH,p1);
f.add (BorderLayout.CENTER,p2);
b5.addActionListener(new Clear());
b1.addActionListener(new Addizione());
b2.addActionListener(new Sottrazione());
b4.addActionListener(new Divisione());
b3.addActionListener(new Moltiplicazione());
b6.addActionListener(new Uguale());
f.setVisible(true);
}
public class Addizione implements ActionListener{
public void actionPerformed(ActionEvent event){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double addizione=t+t1;
String r=Double.toString(addizione);
risultato.setText(r);*/
valori='+';
}
}
public class Uguale implements ActionListener{
public void actionPerformed(ActionEvent event){
String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double r=0;
if(valori=='+') r=t+t1;
if(valori=='-') r=t-t1;
if(valori=='X') r=t*t1;
if(valori=='/') r=t/t1;
String rr=Double.toString(r);
risultato.setText(rr);
}
}
public class Sottrazione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double sottrazione=t-t1;
String r=Double.toString(sottrazione);
risultato.setText(r);*/
valori='-';
}
}
public class Moltiplicazione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
int moltiplicazione=t*t1;
String r=Integer.toString(moltiplicazione);
risultato.setText(r);*/
valori='X';
}
}
public class Clear implements ActionListener{
public void actionPerformed(ActionEvent e){
f1.setText("");
f2.setText("");
risultato.setText("");
}
}
public class Divisione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double divisione=t/t1;
String r=Double.toString(divisione);
risultato.setText(r);*/
valori='/';
}
}
public static void main (String []args){
Calcolatrice f=new Calcolatrice();
}
}
/*Autore del sorgente : Matteo Gastaldi*/
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Calcolatrice{
JFrame f=new JFrame("Calcolatrice Autore : Matteo Gastaldi");
JLabel l1=new JLabel("1° operando :");
JLabel l2=new JLabel("2° operando :");
JLabel l3=new JLabel("risultato : ");
JTextField f1=new JTextField();
JTextField f2=new JTextField();
JButton b5=new JButton("clear");
JButton b1=new JButton("+");
JButton b2=new JButton("-");
JButton b4=new JButton("/");
JButton b3=new JButton("X");
JButton b6=new JButton("=");
JLabel risultato=new JLabel();
JPanel p1=new JPanel();
JPanel p2=new JPanel();
char valori;
public Calcolatrice(){
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400,400);
p1.setLayout(new GridLayout(3,2));
p2.setLayout(new GridLayout(2,3));
p1.add(l1);
p1.add(f1);
p1.add(l2);
p1.add(f2);
p1.add(l3);
p1.add(risultato);
p2.add(b5);
p2.add(b1);
p2.add(b2);
p2.add(b4);
p2.add(b3);
p2.add(b6);
f.add (BorderLayout.NORTH,p1);
f.add (BorderLayout.CENTER,p2);
b5.addActionListener(new Clear());
b1.addActionListener(new Addizione());
b2.addActionListener(new Sottrazione());
b4.addActionListener(new Divisione());
b3.addActionListener(new Moltiplicazione());
b6.addActionListener(new Uguale());
f.setVisible(true);
}
public class Addizione implements ActionListener{
public void actionPerformed(ActionEvent event){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double addizione=t+t1;
String r=Double.toString(addizione);
risultato.setText(r);*/
valori='+';
}
}
public class Uguale implements ActionListener{
public void actionPerformed(ActionEvent event){
String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double r=0;
if(valori=='+') r=t+t1;
if(valori=='-') r=t-t1;
if(valori=='X') r=t*t1;
if(valori=='/') r=t/t1;
String rr=Double.toString(r);
risultato.setText(rr);
}
}
public class Sottrazione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double sottrazione=t-t1;
String r=Double.toString(sottrazione);
risultato.setText(r);*/
valori='-';
}
}
public class Moltiplicazione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
int moltiplicazione=t*t1;
String r=Integer.toString(moltiplicazione);
risultato.setText(r);*/
valori='X';
}
}
public class Clear implements ActionListener{
public void actionPerformed(ActionEvent e){
f1.setText("");
f2.setText("");
risultato.setText("");
}
}
public class Divisione implements ActionListener{
public void actionPerformed(ActionEvent e){
/*String testo1=f1.getText();
String testo2=f2.getText();
int t=Integer.parseInt(testo1);
int t1=Integer.parseInt(testo2);
double divisione=t/t1;
String r=Double.toString(divisione);
risultato.setText(r);*/
valori='/';
}
}
public static void main (String []args){
Calcolatrice f=new Calcolatrice();
}
}
/*Autore del sorgente : Matteo Gastaldi*/
venerdì 20 febbraio 2009
Esercitazione sugli Array Char
public class Stringhe1{
String s="#Sud Africa#";
public String eliminaCarattere(String s){
int l=s.length();
int j=0;
char[] c=new char[l];
char[] c1=new char[l];
c=s.toCharArray();
for (int i=0; i if (c[i]!='#') {
c1[j]=c[i];
j++;
}
}
String nuova=new String(c1);
return nuova;
}
public static void main(String[] args){
Stringhe1 s1=new Stringhe1();
String ss="#Su#d Af#rica#";
String ss1=s1.eliminaCarattere(ss);
System.out.println(ss1);
}
}
String s="#Sud Africa#";
public String eliminaCarattere(String s){
int l=s.length();
int j=0;
char[] c=new char[l];
char[] c1=new char[l];
c=s.toCharArray();
for (int i=0; i
c1[j]=c[i];
j++;
}
}
String nuova=new String(c1);
return nuova;
}
public static void main(String[] args){
Stringhe1 s1=new Stringhe1();
String ss="#Su#d Af#rica#";
String ss1=s1.eliminaCarattere(ss);
System.out.println(ss1);
}
}
Iscriviti a:
Post (Atom)