我的評論
re: 小巧好用的H2數(shù)據(jù)庫 火炎炎 2012-02-01 17:24
H2 數(shù)據(jù)庫 2010-10-04 10:31:31| 分類: 數(shù)據(jù)庫 | 標簽:h2 |字號大中小 訂閱 .
1.數(shù)據(jù)庫連接的jdbc url
h2分嵌入模式和服務模式,根據(jù)不同的模式和情況。連接數(shù)據(jù)庫jdbc url的寫法不同
連接內(nèi)嵌模式的數(shù)據(jù)庫
"jdbc:h2:file:D:/test" 連接自定目錄下的指定數(shù)據(jù)庫
"jdbc:h2:~/test" 連接默認目錄下的指定數(shù)據(jù)庫
連接內(nèi)存模式的數(shù)據(jù)庫
jdbc:h2:mem:test
連接server模式的數(shù)據(jù)庫
jdbc:h2:tcp://localhost/~/test
ssl連接數(shù)據(jù)庫
jdbc:h2:ssl://localhost/~/test
連接壓縮文件內(nèi)的數(shù)據(jù)庫
jdbc:h2:zip:D:/test.zip!/test
2.h2自帶的連接池
JdbcConnectionPool cp = JdbcConnectionPool.create(url,username,password);
通過連接池獲取連接
Connection conn = cp.getConnection();
note:
默認連接池是初始10個連接
3.嵌入模式數(shù)據(jù)庫管理
通過代碼啟動數(shù)據(jù)庫服務
Server server = Server.createTcpServer();
server.start();
關(guān)閉數(shù)據(jù)庫服務
server.stop();
.數(shù)據(jù)庫注銷
server.shutdown();
4.通過h2自帶的方法跟cvs文件讀寫數(shù)據(jù)
1.通過代碼讀取csv的數(shù)據(jù)
ResultSet rs = Csv.getInstance().read(fileName, null, null);
ResultSetMetaData meta = rs.getMetaData();
while (rs.next()) {
for (int i = 0; i < meta.getColumnCount(); i++) {
System.out.println(meta.getColumnLabel(i + 1) + ":"
+ rs.getString(i + 1));
}
System.out.println();
}
rs.close();
通過代碼寫csv數(shù)據(jù)
SimpleResultSet rs = new SimpleResultSet();
rs.addColumn("name", Types.VARCHAR, 255, 0);
rs.addColumn("email", Types.VARCHAR, 255, 0);
rs.addRow("陳盈", "yingchen@midea.com.cn");
rs.addRow("鄒嘉欣", "zoujx@midea.com.cn");
Csv.getInstance().write(fileName, rs, null);
2.使用h2自帶cvs函數(shù)通過sql語句實現(xiàn)
csvread()實現(xiàn)讀csv文件
例:SELECT * FROM CSVREAD('d:/test.csv');
CSVWRITE()實現(xiàn)寫csv文件
例:CALL CSVWRITE('d:/test.csv', 'SELECT * FROM TEST');
3.根據(jù)cvs文件創(chuàng)建h2數(shù)據(jù)庫表
CREATE TABLE TEST AS SELECT * FROM CSVREAD('test.csv');//csv文件數(shù)據(jù)創(chuàng)建test表 CREATE TABLE TEST(ID INT PRIMARY KEY, NAME VARCHAR(255)) AS SELECT * FROM CSVREAD('test.csv');/創(chuàng)建test表,csv文件相應的列插入到test表相應的字段
5.H2數(shù)據(jù)庫備份
1.備份sql腳本
運行
java -cp h2*.jar org.h2.tools.Script -url jdbc:h2:~/test -user sa -script test.zip -options compression zip
2.備份數(shù)據(jù)庫文件
方法1:進入h2 shell 命令行模式
java -cp h2*.jar org.h2.tools.Shell
方法2:在shell命令行環(huán)境下執(zhí)行備份命令
BACKUP TO 'backup.zip'
1.數(shù)據(jù)庫連接的jdbc url
h2分嵌入模式和服務模式,根據(jù)不同的模式和情況。連接數(shù)據(jù)庫jdbc url的寫法不同
連接內(nèi)嵌模式的數(shù)據(jù)庫
"jdbc:h2:file:D:/test" 連接自定目錄下的指定數(shù)據(jù)庫
"jdbc:h2:~/test" 連接默認目錄下的指定數(shù)據(jù)庫
連接內(nèi)存模式的數(shù)據(jù)庫
jdbc:h2:mem:test
連接server模式的數(shù)據(jù)庫
jdbc:h2:tcp://localhost/~/test
ssl連接數(shù)據(jù)庫
jdbc:h2:ssl://localhost/~/test
連接壓縮文件內(nèi)的數(shù)據(jù)庫
jdbc:h2:zip:D:/test.zip!/test
2.h2自帶的連接池
JdbcConnectionPool cp = JdbcConnectionPool.create(url,username,password);
通過連接池獲取連接
Connection conn = cp.getConnection();
note:
默認連接池是初始10個連接
3.嵌入模式數(shù)據(jù)庫管理
通過代碼啟動數(shù)據(jù)庫服務
Server server = Server.createTcpServer();
server.start();
關(guān)閉數(shù)據(jù)庫服務
server.stop();
.數(shù)據(jù)庫注銷
server.shutdown();
4.通過h2自帶的方法跟cvs文件讀寫數(shù)據(jù)
1.通過代碼讀取csv的數(shù)據(jù)
ResultSet rs = Csv.getInstance().read(fileName, null, null);
ResultSetMetaData meta = rs.getMetaData();
while (rs.next()) {
for (int i = 0; i < meta.getColumnCount(); i++) {
System.out.println(meta.getColumnLabel(i + 1) + ":"
+ rs.getString(i + 1));
}
System.out.println();
}
rs.close();
通過代碼寫csv數(shù)據(jù)
SimpleResultSet rs = new SimpleResultSet();
rs.addColumn("name", Types.VARCHAR, 255, 0);
rs.addColumn("email", Types.VARCHAR, 255, 0);
rs.addRow("陳盈", "yingchen@midea.com.cn");
rs.addRow("鄒嘉欣", "zoujx@midea.com.cn");
Csv.getInstance().write(fileName, rs, null);
2.使用h2自帶cvs函數(shù)通過sql語句實現(xiàn)
csvread()實現(xiàn)讀csv文件
例:SELECT * FROM CSVREAD('d:/test.csv');
CSVWRITE()實現(xiàn)寫csv文件
例:CALL CSVWRITE('d:/test.csv', 'SELECT * FROM TEST');
3.根據(jù)cvs文件創(chuàng)建h2數(shù)據(jù)庫表
CREATE TABLE TEST AS SELECT * FROM CSVREAD('test.csv');//csv文件數(shù)據(jù)創(chuàng)建test表 CREATE TABLE TEST(ID INT PRIMARY KEY, NAME VARCHAR(255)) AS SELECT * FROM CSVREAD('test.csv');/創(chuàng)建test表,csv文件相應的列插入到test表相應的字段
5.H2數(shù)據(jù)庫備份
1.備份sql腳本
運行
java -cp h2*.jar org.h2.tools.Script -url jdbc:h2:~/test -user sa -script test.zip -options compression zip
2.備份數(shù)據(jù)庫文件
方法1:進入h2 shell 命令行模式
java -cp h2*.jar org.h2.tools.Shell
方法2:在shell命令行環(huán)境下執(zhí)行備份命令
BACKUP TO 'backup.zip'