>>권현성 님께서 쓰시길<<
:: 오라클과 jdbc연동 테스트 소스입니다...
:: 그런데 resultset을 찾을수 없다고 나옵니다...
:: statement나resultset을 얻는 방법을 가르쳐주세요
:: /* address table sql */
:: create table tb_address (
:: id number(10),
:: name varchar2(30),
:: addr varchar2(100)
:: );
::
:: Table을 만들었으면 다음 SQL을 실행 시켜 자료를 넣는다.
::
:: /* data insert */
::
:: insert into tb_address (id, name, addr)
:: values(1, 홍길동 , 서울시 종로구 );
:: insert into tb_address (id, name, addr)
:: values(2, 김삿갓 , 서울시 마포구 );
:: insert into tb_address (id, name, addr)
:: values(3, James , New York, USA );
:: insert into tb_address (id, name, addr)
:: values(4, Smith , New York, USA );
::
:: 그 다음은 classpath에 classes12.zip을 설정하고 다음 program을
:: 수정한 뒤에 compile한다.
::
:: // file name : SimpleJDBC.java
:: //
:: // 수정할 사항 (URL)
:: // - "@127.0.0.1" 은 Oracle DB가 설치된 Server의 ip address 또는
:: // host name으로 바꾼다.
:: // - "ora8"은 Oracle DB의 SID 즉 시스템 id로 바꾼다.
:: // - "scott","tiger"는 DB 사용자 id화 password로 바꾼다.
::
:: import java.sql.*;
::
:: public class SimpleJDBC {
::
:: public static void main(String[] args) throws Exception{
::
:: DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
:: Connection conn = DriverManager.getConnection(
:: "jdbc:oracle:thin:@127.0.0.1:1521:ora8","scott","tiger");
:: Statement stmt = conn.createStatement();
::
:: ResultSet rset = stmt.executeQuery("SELECT ID, NAME, ADDR FROM TB_ADDRESS ");
::
:: while(rset.next()) {
:: System.out.println(rset.getInt(1));
:: System.out.println(rset.getString(2));
:: System.out.println(rset.getString(3));
:: }
::
:: conn.close();
::
:: }
::
잘못 하셨군요!!!
이 소스로 한번 해 보세요..
import java.sql.*;
class DatabaseTest
{
public static void main(String args[])
{
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Driver Loaded...");
}
catch (ClassNotFoundException e)
{
System.out.println(e.getMessage());
}
try
{
int cnt;
String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
Connection con= DriverManager.getConnection(url,"scott","tiger");
System.out.println("Connected with DB...");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("Select * from emp");
ResultSetMetaData rsmd = rs.getMetaData();
cnt = rsmd.getColumnCount();
System.out.println("===============================================");
System.out.println(" ID Name Phone Addr ");
System.out.println("===============================================");
int i = 0;
while(rs.next())
{
i++;
String id = rs.getString(1);
String name = rs.getString(2);
String phone = rs.getString(3);
String addr = rs.getString(4);
System.out.print(" " + id);
System.out.print(" " + name);
System.out.print(" " + phone);
System.out.println(" " + addr);
}
System.out.println("===============================================");
System.out.println("컬럼수 => "+cnt);
System.out.println("레코드수 => "+i);
rs.close();
stmt.close();
con.close();
}
catch(Exception ex)
{
ex.printStackTrace();
}
finally
{
}
}
}
|