--- FM2SQL/Attic/DBBean.java 2004/04/30 10:56:06 1.17 +++ FM2SQL/Attic/DBBean.java 2004/05/06 11:39:42 1.18 @@ -152,8 +152,8 @@ public class DBBean ConnectionPool conPool = (ConnectionPool) connectionPool.get(url); if (conPool == null) { - connection = DriverManager.getConnection(url, user, passwd); - connectionPool.put(url, new ConnectionPool(url, user, passwd, connection)); + createConnection(); + } else { if (!conPool.user.equals(user) || !conPool.passwd.equals(passwd)) @@ -167,12 +167,15 @@ public class DBBean if (connection.isClosed()) { System.out.println("Made new connection!!!"); - connection = DriverManager.getConnection(conPool.url, conPool.user, conPool.passwd); + createConnection(); + + // connection = DriverManager.getConnection(conPool.url, conPool.user, conPool.passwd); conPool.con = connection; } } if (url != "" && connection == null) - connection = DriverManager.getConnection(url, user, passwd); + createConnection(); + //connection = DriverManager.getConnection(url, user, passwd); dbMetaData = connection.getMetaData(); quoteChar = dbMetaData.getIdentifierQuoteString(); if (quoteChar == null) @@ -180,6 +183,25 @@ public class DBBean return connection; } + private void createConnection() throws SQLException + { + // setup the properties + java.util.Properties prop = new java.util.Properties(); + prop.put("charSet", "Cp1256"); + prop.put("user", user); + prop.put("password", passwd); + System.out.println("url "+url); + if(url.indexOf("odbc")>=0) + { + // Connect to the database + connection = DriverManager.getConnection(url, prop); + System.out.println("odbc with properties inited"); + } + else + connection = DriverManager.getConnection(url, user, passwd); + connectionPool.put(url, new ConnectionPool(url, user, passwd, connection)); + + } /** * sets the connection of this DBBean to the database specified in the url * property @@ -188,7 +210,8 @@ public class DBBean { this.url = url; if (url != "") - connection = DriverManager.getConnection(url, user, passwd); + //connection = DriverManager.getConnection(url, user, passwd); + createConnection(); dbMetaData = connection.getMetaData(); quoteChar = dbMetaData.getIdentifierQuoteString(); if (quoteChar == null) @@ -204,7 +227,8 @@ public class DBBean this.passwd = passwd; this.url = url; if (url != "") - connection = DriverManager.getConnection(url, user, passwd); + createConnection(); + // connection = DriverManager.getConnection(url, user, passwd); dbMetaData = connection.getMetaData(); quoteChar = dbMetaData.getIdentifierQuoteString(); if (quoteChar == null) @@ -686,8 +710,8 @@ public class DBBean stm.execute(query); } catch(Exception e) { // TODO remove - if(FM2SQL.fmInstance!=null) - FM2SQL.showErrorDialog("Error caught!! \n Query was "+query+" \n","Debug Info"); + // if(FM2SQL.fmInstance!=null) + // FM2SQL.showErrorDialog("Error caught!! \n Query was "+query+" \n","Debug Info"); } long time2 = System.currentTimeMillis(); @@ -1345,7 +1369,9 @@ public class DBBean if(url.toLowerCase().indexOf("odbc")>=0) { byte[] val = resultSet.getBytes(i); - tableRow.addElement((val==null) ? null:new String(val,"UTF-8")); + for(int j=0;j