1. 程式人生 > 其它 >java小程式連線dm資料庫

java小程式連線dm資料庫

1.安裝java和jdk

1.1  方式一:自行安裝對應環境

1.2 方式二:如有安裝了oracle 或者dm 早期版本可以找找是否存在,配置下環境變數,直接用:

例如:

JAVA_HOME  : C:\dmdbms\jdk\bin

JDBC 驅動包: C:\dmdbms\drivers\jdbc\    --可以放到執行目錄下,指定jar包執行。

PATH : C:\dmdbms\jdk\bin

 

2.驗證java

java -version    -- 檢視jdk版本 ,確定jdbc使用哪個版本1.6 ~1.8.

 

3.編譯小程式,hello.java:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.PreparedStatement;

//import dm.jdbc.driver.*;

public class hello {

	/**
	 * @param args
	 * @throws Exception 
	 * @throws ClassNotFoundException 
	 */
	public static void main(String[] args) throws SQLException {
		JdbcCon test=new JdbcCon();
		try{
			test.query("drop table t1");
		}catch(SQLException e){}
		test.query("create table t1(c1 int, c2 int)");
		test.query("insert into t1 values(4,1)");
		test.updatecolwhere();
		test.query("select * from t1", true);
		test.close();
	}
}

class JdbcCon {
	private static Connection conn = null;
	//private static String driver="oracle.jdbc.OracleDriver";
	private static String jdbcString = "dm.jdbc.driver.DmDriver";
	//private static String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
	private static String url="jdbc:dm://223.254.18.20:8236";
	//private static String username="dmhs";
	private static String username="SYSDBA";
	//private static String password="dmhs";
	private static String password="SYSDBA";
	private static synchronized Connection getConn(){
		if (conn == null){
			try{
				Class.forName(jdbcString);
				conn=DriverManager.getConnection(url,username,password);
			}catch(ClassNotFoundException e){
				e.printStackTrace();
			}catch(SQLException e){
				e.printStackTrace();
			}
		}
		return conn;
	}
	
	public void updatecolwhere( ) throws SQLException{
		String sql = "update T1  set C2=? where C1=?;";
		PreparedStatement pstmt = getConn().prepareStatement(sql);		
		for(int i=1;i<=2;i++){
				pstmt.setString(1, String.valueOf(i+3));
				pstmt.setString(2, String.valueOf(4));
				pstmt.addBatch();
			}		 

			pstmt.executeBatch();
			getConn().commit();
	}	
	
	public void query(String sql, boolean isSelect)throws SQLException{
		PreparedStatement pstmt;
		try{
			pstmt = getConn().prepareStatement(sql);
			ResultSet rs=pstmt.executeQuery();
			while(rs.next()){
				String name=rs.getString("C2");
				System.out.println(name);
			}
			rs.close();
			pstmt.close();
		}catch(SQLException e){
			e.printStackTrace();
		}
	}
	
	public void query(String sql)throws SQLException{
		PreparedStatement pstmt;
		pstmt = getConn().prepareStatement(sql);
		pstmt.execute();
		pstmt.close();
	}
	
	public void close(){
		try{
			getConn().close();
		}catch(SQLException e){
			e.printStackTrace();
		}
	}
}

  

4.編譯

javac hello.java

 

5.執行 

java -cp DmJdbcDriver18.jar;  hello