KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > h2 > samples > Compact


1 /*
2  * Copyright 2004-2006 H2 Group. Licensed under the H2 License, Version 1.0 (http://h2database.com/html/license.html).
3  * Initial Developer: H2 Group
4  */

5 package org.h2.samples;
6
7 import java.sql.Connection JavaDoc;
8 import java.sql.DriverManager JavaDoc;
9 import java.sql.Statement JavaDoc;
10
11 import org.h2.tools.Backup;
12 import org.h2.tools.DeleteDbFiles;
13 import org.h2.tools.RunScript;
14
15 public class Compact {
16     public static void main(String JavaDoc[] args) throws Exception JavaDoc {
17         DeleteDbFiles.execute("data", "test", true);
18         Class.forName("org.h2.Driver");
19         Connection JavaDoc conn = DriverManager.getConnection("jdbc:h2:data/test", "sa", "");
20         Statement JavaDoc stat = conn.createStatement();
21         stat.execute("CREATE TABLE TEST(ID INT PRIMARY KEY, NAME VARCHAR)");
22         stat.execute("INSERT INTO TEST VALUES(1, 'Hello'), (2, 'World');");
23         conn.close();
24         
25         System.out.println("Compacting...");
26         compact("data", "test", "sa", "");
27         System.out.println("Done.");
28         
29     }
30     
31     public static void compact(String JavaDoc dir, String JavaDoc dbName, String JavaDoc user, String JavaDoc password) throws Exception JavaDoc {
32         String JavaDoc url = "jdbc:h2:" + dir + "/" + dbName;
33         String JavaDoc script = "data/test.sql";
34         Backup.execute(url, user, password, script);
35         DeleteDbFiles.execute(dir, dbName, true);
36         RunScript.execute(url, user, password, script, null, false);
37     }
38 }
39
Popular Tags