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 Buttons da tela lUserID = new JLabel("Código"); c.add(lUserID); lUserID.reshape(5,15,110,20); lName = new JLabel("Nome"); c.add(lName); lName.reshape(5,45,110,20); lLogin = new JLabel("Login"); c.add(lLogin); lLogin.reshape(5,75,110,20); lPasswd = new JLabel("Password"); c.add(lPasswd); lPasswd.reshape(5,105,110,20); tUserID = new JTextField(10); c.add(tUserID); tUserID.reshape(110,15,50,20); tName = new JTextField(50); c.add(tName); tName.reshape(110,45,190,20); tLogin = new JTextField(50); c.add(tLogin); tLogin.reshape(110,75,190,20); tPasswd = new JTextField(50); c.add(tPasswd); tPasswd.reshape(110,105,190,20); } //Limpa tela void frameClear() { tUserID.setText(""); tName.setText(""); tLogin.setText(""); tPasswd.setText(""); } //Modulo de Replaca com o Dominio void actionButton(int tipo) { DBUser user = new DBUser(); try { user.setUserID(Integer.parseInt(tUserID.getText())); } catch(Exception e) { user.setUserID(0); } user.setName(tName.getText()); user.setLogin(tLogin.getText()); user.setPasswd(tPasswd.getText()); if ((user.execute() == false ) && (tipo != 4)) { JOptionPane.showMessageDialog(null, user.getMenErro(), "Erro interno", JOptionPane.ERROR_MESSAGE); } else { String dummy = new String(); if (tipo == 1) { JOptionPane.showMessageDialog(null, "INSERIR"); user.replaceDBInsert(); } if (tipo == 2) { user.replaceDBUpdate(); } if (tipo == 3) { user.replaceDBDelete(); frameClear(); } if (tipo == 4) { ResultSet rs; rs = user.replaceDBSelect(); try { while (rs.next()) { tUserID.setText(String.valueOf(rs.getInt("user_id"))); tName.setText (rs.getString("name")); tLogin.setText (rs.getString("login")); tPasswd.setText (rs.getString("passwd")); } } catch(SQLException sqlex) { JOptionPane.showMessageDialog(null, "Erro: DB x Frame", "Erro interno", JOptionPane.ERROR_MESSAGE); } } } } //modulo de execucao do software public static void main(String args[]) { FrmUser window = new FrmUser(); window.addWindowListener ( new WindowAdapter() { public void WindowClosing(WindowEvent e) { System.exit(0); } } ); window.setSize(500,270); window.show(); } }
------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------