[java-list] 3 Camadas (Conexão Interbase)
Pessoal me ajudem por favor, Criei uma classe de conexão com os Banco de Dados MySQL e Intebase, ambos estão no Linux (RedHat 6.2). Criei uma segunda classe que faz a conexão com o Banco de Dados atraves da classe acima e tudo funciona perfeitamente. Agora esta a dúvida. Peguei da propria lista um exemplo de 3 camadas utilizando o Access, onde estudando esse exemplo criei meu projeto acessando o Interbase, só que ao fazer a conexão utilizando a mesma classe acima, esta dando o seguinte erro ao tentar fazer a conexão: ERRO: interbase.interclient.UnavailableDatabaseFileException: [interclient][interbase] I/O error for file /opt/intebase/data/store.gdb Error while trying to open file No such file or directory Não sei o que pode ser, pois a classe de conexão esta correta, pois funcionou em outras classes, anexo estão 3 classes que se interagem entre si para fazer o processo, gostaria que me ajudassem !!! Muito Obrigado pela atenção de todos. ___ Yahoo! GeoCities Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil e grátis! http://br.geocities.yahoo.com/ import java.sql.*; public class DBConnect extends Object { Connection connection; public DBConnect() { try { Class.forName(interbase.interclient.Driver); String url = jdbc:interbase://localhost//opt/intebase/data/store.gdb; connection =DriverManager.getConnection(url, SYSDBA,masterkey); } catch( Exception ex ) { System.out.println(ERRO: +ex); } } Connection sessionActive() { return(connection); } } import User; import DBConnect; import java.sql.*; import javax.swing.*; class DBUser extends User { Connection con; DBConnect conexaoDB; int USER_ID; String NAME, LOGIN, PASSWD; public DBUser() { super(); //Instancia da classe de conexao do banco de dados conexaoDB = new DBConnect(); //con = conexaoDB.MySQLConnect(store); //MYSQL //con = conexaoDB.IBConnect(); //INTERBASE } void replaceDBInsert() { try { /* JOptionPane.showMessageDialog(null, INSERINDO); JOptionPane.showMessageDialog(null, Codigo: +getUserID()); JOptionPane.showMessageDialog(null, Nome: +getName()); JOptionPane.showMessageDialog(null, Login: +getLogin()); JOptionPane.showMessageDialog(null, Passwd: +getPasswd()); */ // String sqlAdd = INSERT INTO ST_USER (USER_ID, NAME, LOGIN, PASSWD) VALUES (?,?,?,?); String sqlAdd = INSERT INTO ST_USER VALUES (USER_ID, NAME, LOGIN, PASSWD); PreparedStatement addUser; con = conexaoDB.sessionActive(); addUser = con.prepareStatement(sqlAdd); addUser.setInt(1,getUserID()); addUser.setString(2,getName()); addUser.setString(3,getLogin()); addUser.setString(4,getPasswd()); addUser.executeUpdate(); setMenErroDB(); } catch(SQLException sqlex) { setMenErroDB(Erro: Insert); } } void replaceDBUpdate() { try { String sqlAdd = UPDATE st_user SET name = ?, login = ?, passwd = ? WHERE user_id = ?; PreparedStatement updateUser; con = conexaoDB.sessionActive(); updateUser = con.prepareStatement(sqlAdd); updateUser.setString(1,getName()); updateUser.setString(2,getLogin()); updateUser.setString(3,getPasswd()); updateUser.setInt(4,getUserID()); updateUser.executeUpdate(); } catch(SQLException sqlex) { setMenErroDB(Erro: Update); } } void replaceDBDelete() { try { String sqlAdd = DELETE FROM st_user WHERE user_id = ?; PreparedStatement deleteUser; con = conexaoDB.sessionActive(); deleteUser = con.prepareStatement(sqlAdd); deleteUser.setInt(1,getUserID()); deleteUser.executeUpdate(); } catch(SQLException sqlex)
Re: [java-list] 3 Camadas (Conexão Interbase)
tente mudar as barras pra invertida, acho q assim esta no formato pra unix - Original Message - From: Daniel Patrick Pereira [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, December 10, 2001 11:20 AM Subject: [java-list] 3 Camadas (Conexão Interbase) Pessoal me ajudem por favor, Criei uma classe de conexão com os Banco de Dados MySQL e Intebase, ambos estão no Linux (RedHat 6.2). Criei uma segunda classe que faz a conexão com o Banco de Dados atraves da classe acima e tudo funciona perfeitamente. Agora esta a dúvida. Peguei da propria lista um exemplo de 3 camadas utilizando o Access, onde estudando esse exemplo criei meu projeto acessando o Interbase, só que ao fazer a conexão utilizando a mesma classe acima, esta dando o seguinte erro ao tentar fazer a conexão: ERRO: interbase.interclient.UnavailableDatabaseFileException: [interclient][interbase] I/O error for file /opt/intebase/data/store.gdb Error while trying to open file No such file or directory Não sei o que pode ser, pois a classe de conexão esta correta, pois funcionou em outras classes, anexo estão 3 classes que se interagem entre si para fazer o processo, gostaria que me ajudassem !!! Muito Obrigado pela atenção de todos. ___ Yahoo! GeoCities Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil e grátis! http://br.geocities.yahoo.com/ import java.sql.*; public class DBConnect extends Object { Connection connection; public DBConnect() { try { Class.forName(interbase.interclient.Driver); String url = jdbc:interbase://localhost//opt/intebase/data/store.gdb; connection =DriverManager.getConnection(url, SYSDBA,masterkey); } catch( Exception ex ) { System.out.println(ERRO: +ex); } } Connection sessionActive() { return(connection); } } import User; import DBConnect; import java.sql.*; import javax.swing.*; class DBUser extends User { Connection con; DBConnect conexaoDB; int USER_ID; String NAME, LOGIN, PASSWD; public DBUser() { super(); //Instancia da classe de conexao do banco de dados conexaoDB = new DBConnect(); //con = conexaoDB.MySQLConnect(store); //MYSQL //con = conexaoDB.IBConnect(); //INTERBASE } void replaceDBInsert() { try { /* JOptionPane.showMessageDialog(null, INSERINDO); JOptionPane.showMessageDialog(null, Codigo: +getUserID()); JOptionPane.showMessageDialog(null, Nome: +getName()); JOptionPane.showMessageDialog(null, Login: +getLogin()); JOptionPane.showMessageDialog(null, Passwd: +getPasswd()); */ // String sqlAdd = INSERT INTO ST_USER (USER_ID, NAME, LOGIN, PASSWD) VALUES (?,?,?,?); String sqlAdd = INSERT INTO ST_USER VALUES (USER_ID, NAME, LOGIN, PASSWD); PreparedStatement addUser; con = conexaoDB.sessionActive(); addUser = con.prepareStatement(sqlAdd); addUser.setInt(1,getUserID()); addUser.setString(2,getName()); addUser.setString(3,getLogin()); addUser.setString(4,getPasswd()); addUser.executeUpdate(); setMenErroDB(); } catch(SQLException sqlex) { setMenErroDB(Erro: Insert); } } void replaceDBUpdate() { try { String sqlAdd = UPDATE st_user SET name = ?, login = ?, passwd = ? WHERE user_id = ?; PreparedStatement updateUser; con = conexaoDB.sessionActive(); updateUser = con.prepareStatement(sqlAdd); updateUser.setString(1,getName()); updateUser.setString(2,getLogin()); updateUser.setString(3,getPasswd()); updateUser.setInt(4,getUserID()); updateUser.executeUpdate(); } catch(SQLException sqlex) { setMenErroDB(Erro: Update); } } void replaceDBDelete() { try { String sqlAdd = DELETE FROM st_user WHERE user_id = ?; PreparedStatement deleteUser; con = conexaoDB.sessionActive(); deleteUser = con.prepareStatement(sqlAdd); deleteUser.setInt(1,getUserID()); deleteUser.executeUpdate(); } catch(SQLException sqlex) { setMenErroDB(Erro: Delete); } } ResultSet replaceDBSelect() { try { String query = SELECT * FROM st_user WHERE user_id = ?; con = conexaoDB.sessionActive(); PreparedStatement stmt = con.prepareStatement(query); stmt.setInt(1,getUserID()); ResultSet rs = stmt.executeQuery(); return (rs); } catch(SQLException sqlex) { setMenErroDB(Erro: Select); return (null); } } } import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; import DBUser; import DBNavigator; public class FrmUser extends DBNavigator { JLabel lUserID, lName, lLogin, lPasswd; JTextField tUserID, tName, tLogin, tPasswd; public FrmUser() { super(); //Labels e
Re: [java-list] 3 Camadas (Conexão Interbase)
Por um acaso não seria erro de permissões de acesso ou escrita ao arquivo/diretorio? Daniel Patrick Pereira wrote: Pessoal me ajudem por favor, Criei uma classe de conexão com os Banco de Dados MySQL e Intebase, ambos estão no Linux (RedHat 6.2). Criei uma segunda classe que faz a conexão com o Banco de Dados atraves da classe acima e tudo funciona perfeitamente. Agora esta a dúvida. Peguei da propria lista um exemplo de 3 camadas utilizando o Access, onde estudando esse exemplo criei meu projeto acessando o Interbase, só que ao fazer a conexão utilizando a mesma classe acima, esta dando o seguinte erro ao tentar fazer a conexão: ERRO: interbase.interclient.UnavailableDatabaseFileException: [interclient][interbase] I/O error for file /opt/intebase/data/store.gdb Error while trying to open file No such file or directory Não sei o que pode ser, pois a classe de conexão esta correta, pois funcionou em outras classes, anexo estão 3 classes que se interagem entre si para fazer o processo, gostaria que me ajudassem !!! Muito Obrigado pela atenção de todos. ___ Yahoo! GeoCities Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil e grátis! http://br.geocities.yahoo.com/ import java.sql.*; public class DBConnect extends Object { Connection connection; public DBConnect() { try { Class.forName(interbase.interclient.Driver); String url = jdbc:interbase://localhost//opt/intebase/data/store.gdb; connection =DriverManager.getConnection(url, SYSDBA,masterkey); } catch( Exception ex ) { System.out.println(ERRO: +ex); } } Connection sessionActive() { return(connection); } } import User; import DBConnect; import java.sql.*; import javax.swing.*; class DBUser extends User { Connection con; DBConnect conexaoDB; int USER_ID; String NAME, LOGIN, PASSWD; public DBUser() { super(); //Instancia da classe de conexao do banco de dados conexaoDB = new DBConnect(); //con = conexaoDB.MySQLConnect(store); //MYSQL //con = conexaoDB.IBConnect(); //INTERBASE } void replaceDBInsert() { try { /* JOptionPane.showMessageDialog(null, INSERINDO); JOptionPane.showMessageDialog(null, Codigo: +getUserID()); JOptionPane.showMessageDialog(null, Nome: +getName()); JOptionPane.showMessageDialog(null, Login: +getLogin()); JOptionPane.showMessageDialog(null, Passwd: +getPasswd()); */ // String sqlAdd = INSERT INTO ST_USER (USER_ID, NAME, LOGIN, PASSWD) VALUES (?,?,?,?); String sqlAdd = INSERT INTO ST_USER VALUES (USER_ID, NAME, LOGIN, PASSWD); PreparedStatement addUser; con = conexaoDB.sessionActive(); addUser = con.prepareStatement(sqlAdd); addUser.setInt(1,getUserID()); addUser.setString(2,getName()); addUser.setString(3,getLogin()); addUser.setString(4,getPasswd()); addUser.executeUpdate(); setMenErroDB(); } catch(SQLException sqlex) { setMenErroDB(Erro: Insert); } } void replaceDBUpdate() { try { String sqlAdd = UPDATE st_user SET name = ?, login = ?, passwd = ? WHERE user_id = ?; PreparedStatement updateUser; con = conexaoDB.sessionActive(); updateUser = con.prepareStatement(sqlAdd); updateUser.setString(1,getName()); updateUser.setString(2,getLogin()); updateUser.setString(3,getPasswd()); updateUser.setInt(4,getUserID()); updateUser.executeUpdate(); } catch(SQLException sqlex) { setMenErroDB(Erro: Update); } } void replaceDBDelete() { try { String sqlAdd =