Ragazzi, la prof di basi di dati ci ha fatto un esempio di traccia d'esame. Praticamente lei ci dà un template (al quale ovviamente ci dobbiamo attenere) e un file PDF con le richieste per le query. Noi dobbiamo completare inserendo le query e i diversi tipi di execute (execute(), executeQuery(), executeUpdate()).

La richiesta che mi interessa è la seguente

[5 punti] Creare la tabella per la relazione DettOrdini con il seguente schema
NroOrdine = stringa di 6 caratteri
NroArt = stringa di 4 caratteri
QtaOrd = intero
PrezzoRichiesto = decimale con precisione 6 e scala 2
e completa di vincoli sia intrarelazionali che interrelazionali.

Quindi ho utilizzato la seguente query

String stringa1 = "CREATE TABLE IF NOT EXISTS DettOrdini
(NroOrdine char(6) PRIMARY KEY,
NroArt char(4), QtaOrd int,
PrezzoRichiesto decimal(6.2),
FOREIGN KEY (NroOrdine) references Ordini(NroOrdine))"


Nel Template c'è scritto

Statement istruzione1 = connessione.createStatement();
ok = istruzione1.execute(stringa1);

num = (ok)?1:0;

System.out.println("Il numero di righe coinvolte dal comando di creazione della tabella DettOrdini è: " + num + " ");


Ho immaginato che volesse una roba del genere

boolean ok = istruzione1.execute(stringa1)

int num;

if(ok == false)
num =0;
else num = 1;

Ci sono altri modi per interpretare queste stringhe?