Sono nuovo di questo sito, ma ringrazio in anticipo chi mi aiuterà!
Come parte di un progetto assegnatomi da un professore devo creare un file.db attraverso ECLIPSE JUNO, ma ho problemi con il codice che ho scritto. Una volta che avrò in mano il file non avrò più bisogno del codice. Sono al corrente che esistano programmi più adatti e comodi alla creazione di un database, ma purtroppo verrò valutato sulla base di ciò che scrivo in java.
Per quanto riguarda la connessione al database credo di non avere problemi, ma non riesco a riempirlo con i dati che ho. Vi spiego meglio il problema e posto il codice:
Ho due classi: Main e Db.
package beans;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class DB {
String nome;
String località;
String telefono;
public DB(String nome, String località, String telefono) {
this.nome = nome;
this.località = località;
this.telefono = telefono;
}
public void create() throws Exception {
Class.forName("org.sqlite.JDBC");
Connection c = DriverManager.getConnection("jdbc:sqlite:db1.db");
Statement s = c.createStatement();
s.executeUpdate("CREATE TABLE places (" +
"nome VARCHAR(50) PRIMARY KEY, " +
"località VARCHAR(50), " +
"telefono INTEGER(50))");
s.executeUpdate("INSERT INTO places (nome,località,telefono) " +
"VALUES (esempio, esempio, 98546)");
ResultSet rs = s.executeQuery("SELECT * from places");
if (rs.next()){
//visualizza dati
System.out.println("nome : "+rs.getString("nome")+"
");
System.out.println("località : "+rs.getString("località")+"
");
System.out.println("telefono: "+rs.getString("telefono")+"
");
}else{
System.out.println("Errore: Database vuoto!");
}
s.close();
c.close();
}
public String toString() {
return "DB [nome=" + nome + ", località=" + località + ", telefono="
+ telefono + "]";
}
}
package beans;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
public class Main {
public static void main (String [] args) throws Exception {
ArrayList<String> indirizzi= new ArrayList<String>();
BufferedReader br = new BufferedReader( new FileReader("docs/DB.txt"));
String line;
while((line=br.readLine())!=null){
String [] w=line.split(";");
String nome=w[0].trim();
String località=w[1].trim();
String telefono=w[2].trim();
DB new_db= new DB(nome,località,telefono);
indirizzi.add(new_db.nome);
indirizzi.add(new_db.località);
indirizzi.add(new_db.telefono);
}br.close();
}
}
Il file.txt è molto lungo, quindi ne posterò soltanto una parte:
Al.Fi Srl; Rottofreno (Pc) 5, Via Curiel S.Nicolo'; Tel: 0523 763077
Al.Fi Srl; Piacenza (Pc) 31, Viale S. Ambrogio; Tel: 0523 305512
Basko S.P.A.; Castel San Giovanni (Pc) 2/B, Via Morselli E.; Tel: 0523 884358
Basko Spa; Borgonovo Val Tidone (Pc) 9, Via Mottaziana; Tel: 0523 864583
Basko Spa; Rottofreno (Pc) Via Emilia Est S.Nicolo'; Tel: 0523 762169
Billa Ag; Castel San Giovanni (Pc) 1, Via Fellegara; Tel: 0523 882475
Billa Aktiengesellschaft; Castel San Giovanni (Pc) Via Emilia Pavese; Tel: 0523 883687
Borgo-Faxhall Borgo Food Srl; Piacenza (Pc) Piazzale Marconi Guglielmo; Tel: 0523 305231
C.Market Srl; Fiorenzuola D'arda (Pc) 18, Via Pellico Silvio; Tel: 0523 981396
C.Market Srl; Gragnano Trebbiense (Pc) 4, Via Trieste; Tel: 0523 788373
Capuano Anna; Podenzano (Pc) 72, Via C. Colombo; Tel: 0523 551097
Castorama Italia Spa; Piacenza (Pc) Strada Bobbiese; Tel: 0523 711431
Ciesseci Spa; Castel San Giovanni (Pc) 56, Via Emilia Piacentina; Tel: 0523 849302
Colombi Livia; Lugagnano Val D'arda (Pc) 9, Piazza Casana; Tel: 0523 891990
Colombi Livia; Castell'arquato (Pc) 2, Via Crocetta; Tel: 0523 803940
Colombi Nadir; Piacenza (Pc) 13, Via Benedettine; Tel: 0523 304633
IL PROBLEMA E' IL SEGUENTE:IL PROGRAMMA NON CREA IL DB RIEMPENDOLO CON LA TUPLA D'ESEMPIO; COSA HO SBAGLIATO? UNA VOLTA VERIFICATO CHE IL DB VENGA CREATO, COME FACCIO A RIEMPIRLO CON LE TUPLE CHE STANNO DENTRO L'ArrayList<String> indirizzi?
Grazie dell'attenzione

Rispondi quotando