DB연동
1. 오라클 - 기존
public static Connection getConnection() throws Exception {
Connection con=null;
try {
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
ds = (DataSource) envCtx.lookup(sDsName);
con= ds.getConnection();
} catch (NamingException ne) {
System.out.println(ne);
}
return con;
}
2. mysql - 수정
public static Connection getConnection() throws Exception {
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
// connect way #1
String url1 = "jdbc:mysql://mysql 연결 IP:3306/DB명"; //(*3306은 기본포트)
String user = "user명";
String password = "비밀번호";
con = DriverManager.getConnection(url1, user, password);
if (con != null) {
System.out.println("Connected to the database test1");
}
} catch (SQLException ex) {
System.out.println("An error occurred. Maybe user/password is invalid");
ex.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Incorrect parameter count in the call to native function 'decode'
(com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : 네이티브 함수 'decode'에 대한 호출에서 잘못된 매개 변수 개수)
-> 로그인을 하면서 DB연동을 하고 계정을 읽어오는데 비밀번호를 읽어오는 과정에서 에러가 나는 것 같다.
DECODE함수는 오라클에서만 지원해주는 함수이며, select 문자 내에서 비교연산을 수행하는 함수라고 한다.
IF문 같은거네... mysql 로 어떻게 바꾸지..............................