Bonjour tout le monde,

Je réalise une petite application java en mode console qui intervient sur le SGBD FrontBase.

Après plusieurs recherche, je vient vous demander de l'aide sur 3 choses car je n'arrive pas à trouver mon bonheur sur la toile.

Tout d'abord j'ai trouvé ce code ('Existe-t-il une manière générique pour créer une BD avec JDBC ?') http://java.developpez.com/faq/jdbc/...divers#creerDB et je me demandé si cela était possible sous tout les SGBD??

Ensuite, 2 questions concernant la base de données :
1) Lorsque j'exécute mon programme, la première fois, il m'ouvre juste le SGBD, comment puis-je faire pour qu'il m'ouvre directement la base souhaité??
2) Est-il possible via du code java de rafraichir la base de données?? Si oui, comment puis-je faire??

Voici un peu de mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
import java.io.IOException;
import java.sql.*;
 
public class DictionnaireParametrable
{
	public static void main(String[] args) 
	{
		 System.out.print("\n                Création des tables et insertions des données                ");
 //ICI => Création de la base de données
	     String url = "jdbc:FrontBase://localhost/DictionnaireParametrable_V3/user=_SYSTEM";
 
	     try 
	     {
	    	 Class.forName ("com.frontbase.jdbc.FBJDriver") .newInstance();
	    	 Connection con = DriverManager.getConnection(url);
 
	 		Runtime runtime = Runtime.getRuntime();
			Process process = null;
	    	 try 
	    	 {
	    		 Statement monStatement = con.createStatement();
 
	    		 System.out.println("\n\n************************************************************************************\n");
 
	    		 String table = "CREATE TABLE Article(id integer, libelle varchar(50), prix integer)";
	    		 monStatement.executeUpdate (table) ;
	    		 String constraint = "ALTER TABLE Article ADD CONSTRAINT PK_Article PRIMARY KEY (id)";
	    		 monStatement.executeUpdate(constraint);
	    		 System.out.println("Création de la table 'Article' avec succée");
 
	    		 String  donnees = "INSERT INTO Article VALUES (1, 'Levis 501', 45)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (2, 'Sportwear', 12)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (3, 'Honda hornet', 1500)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (4, 'Suzuki bandit', 2000)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (5, 'Yamaha FZ6', 1000)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (6, 'Aprilia leonardo', 1250)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (7, 'C# précis et concis', 9)";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO Article VALUES (8, 'Tout sur le développement logiciel', 12)";
	    		 monStatement.executeQuery(donnees);
	    		 System.out.println("Les données de la 'table Article' sont insérées");
 
	    		 // Ouverture du logiciel (du SGBD)
	    		 process = runtime.exec(new String[]{"open", "/Applications/FrontBaseManager.app"});
 
	    		 // ICI => je veux ouvrir la base de données nommée "DictionnaireParametrable_V3"
 
		    	 System.out.println("Pour continuer : cliquer sur la touche entrer de votre clavier");
		    	 int n = System.in.read();
 
 
	    		 System.out.println("\n************************************************************************************\n");
 
	    		 table = "CREATE TABLE TypeArticle(id integer, libelle varchar(30))";
	    		 monStatement.executeUpdate(table);
	    		 constraint = "Alter TABLE TypeArticle ADD CONSTRAINT PK_TypeArticle PRIMARY KEY(id)";
	    		 monStatement.executeUpdate(constraint);
	    		 System.out.println("Création de la table 'TypeArticle' avec succée");
 
	    		 donnees = "INSERT INTO TypeArticle VALUES (1, 'Pantalon(s)')";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO TypeArticle VALUES(2, 'Moto(s)')";
	    		 monStatement.executeQuery(donnees);
	    		 donnees = "INSERT INTO TypeArticle VALUES(3, 'Livre(s)')";
	    		 monStatement.executeQuery(donnees);
	    		 System.out.println("Les données de la table 'TypeArticle' sont insérées");
 
	    		 String modif_article = "ALTER TABLE Article ADD id_TypeArticle integer";
	    		 monStatement.executeUpdate(modif_article);	 
	    		 String liaison = "ALTER TABLE Article ADD CONSTRAINT FK_Article_TypeArticle FOREIGN KEY (id_TypeArticle) REFERENCES TypeArticle(id)";
	    		 monStatement.executeUpdate(liaison);
	    		 String modif_donnees = "UPDATE Article SET id_TypeArticle = 1 WHERE id = 1";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 1 WHERE id = 2";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 2 WHERE id = 3";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 2 WHERE id = 4";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 2 WHERE id = 5";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 2 WHERE id = 6";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 3 WHERE id = 7";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 modif_donnees = "UPDATE Article SET id_TypeArticle = 3 WHERE id = 8";
	    		 monStatement.executeUpdate(modif_donnees);
	    		 System.out.println("Modifications de la table 'Article' sont apportées");
 
	    		 // Ouverture de l'application (vu que le SGBD est resté ouvert, il m'ouvre au niveau d'ou j'étais resté juste avant de retourner au code)
	    		 process = runtime.exec(new String[]{"open", "/Applications/FrontBaseManager.app"});
 
	    		 //ICI => Rafraichissement de la base de données
 
		    	 System.out.println("Pour continuer : cliquer sur la touche entrer de votre clavier");
		    	 n = System.in.read();
.............
Merci d'avance pour votre aide, vos conseils....