Bonjour,

Je me suis mis depuis peu à utiliser h2 embedded (avec mybatis). Le fait est que je crée les tables au démarrage de l'application. Néanmoins, cela ne peut pas se faire tout le temps et j'ai forcement obtenu une erreur. Aussi, je me demandais comment vous faites ? Il y a t'il une façon pour mettre en place les tables dans une base de données h2 embedded ? Pour ma part, j'ai créé une méthode de vérification mais je ne pense pas que ce soit la bonne solution. En effet, j'utilise mybatis pour récupérer les informations dans les tables mais cette méthode me fait passer par la manière basique. Ci-dessous la méthode:
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
 
public static boolean doesTableExist() throws SQLException, ClassNotFoundException{
            Class.forName("org.h2.Driver");
            Connection conn = null;
	    Properties connectionProps = new Properties();
	    connectionProps.put("user", "sa");
	    connectionProps.put("password","");
	    conn = DriverManager.getConnection("jdbc:h2:~/test",connectionProps);
	    DatabaseMetaData md =conn.getMetaData();
	    ResultSet rs = md.getTables(null, null, "%", null);
	    boolean isOk= false;
	    while(rs.next() && !isOk){
	    	if(rs.getString(3).contains("VINZ")) isOk=true;
 
	    }
	    conn.close();
	    return isOk;
	}
Je vous remercie d'avance pour votre aide et vous souhaite une bonne journée.

Vinz