Per utilizzare Apache Derby occorre:
In alternativa si può specificare una locazione differente settando la variabile derby.system.home .
Occorre prestare attenzione quando si fanno le insert di campi di tipo varchar a scrivere nelle query il singolo apice invece del doppio apice, per evitare di incappare in un errore di questo tipo:
Column 'xxxx' is either not in any table in the FROM list or appears within a join specification and is outside the scope of the join specification or appears in a HAVING clause and is not in the GROUP BY list. If this is a CREATE or ALTER TABLE statement then 'mario' is not a column in the target table.
Di seguito un esempio di codice che crea un db, una tabella, effettua una insert e recupera quindi i dati:
Il contenuto della directory derbyTest sarà il seguente:
- Scaricare dal sito l'ultima release ( https://db.apache.org/derby/derby_downloads.html#Latest+Official+Releases );
- Dei vari jar scaricati prendere il derby.jar
In alternativa si può specificare una locazione differente settando la variabile derby.system.home .
Occorre prestare attenzione quando si fanno le insert di campi di tipo varchar a scrivere nelle query il singolo apice invece del doppio apice, per evitare di incappare in un errore di questo tipo:
Column 'xxxx' is either not in any table in the FROM list or appears within a join specification and is outside the scope of the join specification or appears in a HAVING clause and is not in the GROUP BY list. If this is a CREATE or ALTER TABLE statement then 'mario' is not a column in the target table.
Di seguito un esempio di codice che crea un db, una tabella, effettua una insert e recupera quindi i dati:
package it.test.derby;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class ProvaDerby {
public static void main(String[] args) throws Exception {
System.setProperty("derby.system.home", "c:\\lav\\derbyTest");
String url="jdbc:derby:database_test;create=true;user=root;password=root;";
Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
int risultato=0;
Connection conn=DriverManager.getConnection(url);
Statement st=conn.createStatement();
String creazione="create table persona (id integer not null,nome varchar(16),cognome varchar(30), PRIMARY KEY(id))";
risultato=st.executeUpdate(creazione);
System.out.println("RISULTATO: "+risultato);
String insert= "insert into persona (id,nome,cognome) values(1,\"mario\",'rossi')";
PreparedStatement pst=conn.prepareStatement(insert);
risultato=pst.executeUpdate();
System.out.println("RISULTATO INSERT: "+risultato);
String inquiry="select * from persona";
pst=conn.prepareStatement(inquiry);
ResultSet rs=pst.executeQuery();
while(rs.next()){
System.out.println("Nome: "+rs.getString("nome"));
System.out.println("Cognome: "+rs.getString("cognome"));
}
rs.close();
pst.close();
conn.close();
}
}
Il contenuto della directory derbyTest sarà il seguente:
Nessun commento:
Posta un commento