TimesTen是一種內存數據庫,與其它內存數據庫不同的是它依然使用SQL作為數據庫存取的手段,估計是考慮到對Oracle數據庫的兼顧和對象進出方式的不成熟。它既可以作為Oracle的前端緩存使用,也可以獨立使用。下面是將它作為獨立數據庫并使用java程序對其進行訪問的情況:
一.安裝TimesTen數據庫
到頁面“
http://www.oracle.com/technology/global/cn/software/products/timesten/index.html”下載適合你的環境的安裝程序,并進行安裝。(注意需要注冊一個賬號)
二.設置TimesTen環境變量
在你機器上的[TimesTen的安裝目錄]\tt70_32\bin下找到ttenv。雙擊即可。如果要手工設置可以參見其幫助文檔,這里略過。
三.建立一個TimesTen數據源
1.打開“控制面板”->“管理工具”->“數據源”
2.點擊“系統DSN”選項卡,點擊“添加”按鈕。
3.找到“TimesTen Data Manager 7.0”一項,再點擊“完成”按鈕。
4.在“Data Source Name”一項中,填入數據源名;給 “Data Store Path”指定一個目錄,給“Log Directory”指定另一個目錄;指定“DataBase Character Set”為UTF-8;指定“Type Mode”為“1-TimesTen”,這是不依賴Oracle數據庫的方式。具體設置請參考下圖:
四.通過ttIsql建表
ttIsql是TimesTen的管理控制臺,作用相當于MySql數據庫的“MySQL Command Line Client”或Oracle數據庫的“Sql Plus”,通過它我們可以連接到數據庫并執行Sql語句。
在開始菜單中我們可以找到“ttIsql (Interactive SQL)”,點擊即打開管理控制臺窗口。
窗口打開后,我們可以輸入命令“connect myTstDs”連接到剛才建立的數據源,之后可以輸入如下語句建立一張表:
create table employee(
id CHAR(4) primary key not null ,
name VARCHAR(200)
)
五.通過程序在employee表中建立一條記錄
通過程序訪問一數據庫的庫我們需要找到種數據庫的驅動包,訪問TimesTen數據庫的驅動包是ttjdbc14.jar,你可以在[TimesTenan安裝目錄]"tt70_32"lib下找到它。
以下是程序代碼,它能打開TimesTen數據庫,并向剛才創建的employee表中插入一條記錄:
package com.heyang;
import java.sql.Connection;
import java.sql.PreparedStatement;
import com.timesten.jdbc.TimesTenDataSource;
/**
* 程序入口點
* @author 何楊(heyang78@gmail.com)
*
* @since 2009-10-17 下午07:17:11
* @version 1.00
*/
public class Main {
public static void main(String[] args) {
try {
Class.forName("com.timesten.jdbc.TimesTenDriver");
String url = "jdbc:timesten:direct:dsn=myTstDs";
TimesTenDataSource ds = new TimesTenDataSource();
ds.setUrl(url);
Connection conn = ds.getConnection();
conn.setAutoCommit(false);
String sql = "insert into employee ( id, name ) values ( ?, ?);";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "002");
pstmt.setString(2, "heyang@gmail.com");
pstmt.executeUpdate();
conn.commit();
conn.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}