Java 연결 oracle 데이터베이스

3166 단어 자바Oaclesqlcjdbc
자바 프로그램 과 Oacle 데이터베이스 의 상호작용 을 구축 하고 분석 하 는 두 가지 방법.
      첫 번 째 는 비교적 오래된 방법 일 것 이다.
      Windows 에 서 는 JDBC - ODBC Bridge 로 Oacle 데이터 베 이 스 를 연결 합 니 다.  1. Oacle 클 라 이언 트 프로그램 을 설치 하고 tnsnames. ora 에 해당 하 는 데이터베이스 연결 문자열 파일 을 설정 합 니 다. 여기 연결 문자열 이름 은 'dbora' 입 니 다.    2. windows 의 제어 판 -> "데이터베이스 소스 ODBC"에서 해당 하 는 사용자 나 시스템 DSN 을 구축 합 니 다. 구체 적 인 방법: 설 치 된 데이터 소스 의 드라이버 에서 "Microsoft ODBC for Oracle"을 선택 합 니 다."완료"를 누 르 면 팝 업 대화 상자 에 다음 과 같은 정 보 를 입력 합 니 다. 데이터 원본 이름: dbjdbc 설명: jdbc 데이터 원본 사용자 이름: manager - 데이터베이스 사용자 이름 서버: dbora - 이것 은 연결 문자열 이름 입 니 다. "dbjdbc"는 자바 프로그램 에서 참조 할 이름 입 니 다. 이 데이터 원본 dbjdbc 가 만 들 어 졌 습 니 다.3. 다음 자바 프로그램 만 들 기
// 使用本地的jdbc连接串,查询oracle数据库表 
import java.sql.*; 

public class lookup { 
public static void main(String[] args) 
throws SQLException, ClassNotFoundException { 
//定义了数据库连接串 
String dbUrl = "jdbc:odbc:dbjdbc"; 
//数据库的用户名 
String user = "manager"; 
//数据库的用户口令 
String password = "ora912"; 
// 加载jdbc-odbc bridge驱动程序 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
// 与url指定的数据源建立连接 
Connection c = DriverManager.getConnection(dbUrl, user, password); 
//采用Statement进行查询 
Statement s = c.createStatement(); 
ResultSet r = s.executeQuery("SELECT empno,name from emp"); 
while(r.next()) { 
// 打印字段信息 
System.out.println(r.getString("empno") + ", 
" + r.getString("name ") ); 
} 
// 关闭Statement,其上的ResultSet也将关闭 
s.close(); 
} 
} 

 
jdbc 에서 조회 하 는 문 구 는 3 가지 가 있 습 니 다. Statement, Prepared Statement, Callable Statement 입 니 다.jdbc 의 thin 방식 은 Oracle 클 라 이언 트 를 설치 할 필요 도 없고 odbc 를 설정 할 필요 도 없 기 때문에 이 방법 은 비교적 보편적으로 사용 된다.이 방법 은 사용 할 때 oracle 의 jar 패 키 지 를 classpath 변수 에 추가 해 야 합 니 다. 이 패 키 지 는 oralce 클 라 이언 트 프로그램의 $ORACLEHOME/jdbc/lib/classes 12. jar 에서 찾 았 습 니 다.
import java.sql.*; 

public class jdbcthin { 
//dbUrl数据库连接串信息,其中“1521”为端口,“ora9”为sid 
String dbUrl = "jdbc:oracle:thin:@10.10.20.15:1521:ora9"; 
//theUser为数据库用户名 
String theUser = "sman"; 
//thePw为数据库密码 
String thePw = "sman"; 
//几个数据库变量 
Connection c = null; 
Statement conn; 
ResultSet rs = null; 

//初始化连接 
public jdbcthin() { 
try { 
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
//与url指定的数据源建立连接 
c = DriverManager.getConnection(dbUrl, theUser, thePw); 
//采用Statement进行查询 
conn = c.createStatement(); 
} catch (Exception e) { 
e.printStackTrace(); 
} 
} 

//执行查询 
public ResultSet executeQuery(String sql) { 
rs = null; 
try { 
rs = conn.executeQuery(sql); 
} catch (SQLException e) { 
e.printStackTrace(); 
} 
return rs; 
} 

public void close() { 
try { 
conn.close(); 
c.close(); 
} catch (Exception e) { 
e.printStackTrace(); 
} 
} 

public static void main(String[] args) { 
ResultSet newrs; 
jdbcthin newjdbc = new jdbcthin(); 
newrs = newjdbc.executeQuery("select * from eventtype"); 
try { 
while (newrs.next()) { 
System.out.print(newrs.getString("event_type")); 
System.out.println(":"+newrs.getString("content")); 
} 
} catch (Exception e) { 
e.printStackTrace(); 
} 

newjdbc.close(); 
} 
} 

 

좋은 웹페이지 즐겨찾기