boa tarde gente eu estou com um probleminha para mandar as informaçoes como elas deveriam chegar de fato estou tentando concatenar aspas mas nao estou conseguindo se alguem puder me ajudar
boa tarde gente eu estou com um probleminha para mandar as informaçoes como elas deveriam chegar de fato estou tentando concatenar aspas mas nao estou conseguindo se alguem puder me ajudar
Connection con = DriverManager.getConnection
("jdbc:oracle:thin:@"+e.getHost()+":"+ e.getPort()+":xe"+","+e.getLogin()+","+e.getSenha());
o correto seria:
Connection con = DriverManager.getConnection
("jdbc:oracle:thin:@"+e.getHost()+":"+ e.getPort()+":xe" , e.getLogin(), e.getSenha());
as virgulas são para separar os argumentos do método.
G
guialeixo
11/09/2009 11:22:56 oracle.model.EntradaFrame jButtonEntrarActionPerformed
SEVERE: null
java.sql.SQLException: argumentos inválidos na chamada
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:236)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at oracle.dao.EntradaDao.getConexao(EntradaDao.java:15)
at oracle.model.EntradaFrame.jButtonEntrarActionPerformed(EntradaFrame.java:155)
at oracle.model.EntradaFrame.access$000(EntradaFrame.java:24)
at oracle.model.EntradaFrame$1.actionPerformed(EntradaFrame.java:66)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
CONSTRUÍDO COM SUCESSO (tempo total: 43 segundos)
continua dando erro =(
rafaelglauber
Oi,
você já utilizou o debug, verificou os valores que estão sendo passados para o método?
G
guialeixo
Ja sim realmente eu estava errando esta passando valores nulls, como eu faço para poder pegar na classe de conexao do banco valores reais? pois se nao eu terei que validar todos as conexoes e eu nao faço a minima ideia do que faço alguem poderia me ajudar?
publicclassEntradaDao{publicConnectiongetConexao(Entradaent)throwsSQLException{DriverManager.registerDriver(newOracleDriver());// Connection con = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.117:1521:xe", "login, "senha");Connectioncon=DriverManager.getConnection("jdbc:oracle:thin:@"+ent.getHost()+":"+ent.getPort()+":xe",ent.getLogin(),ent.getSenha());returncon;}
publicclassUsuarioDao{publicConnectiongetConexao()throwsException{DriverManager.registerDriver(newOracleDriver());//Connection con = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.117:1521:xe", "login, "senha");Connectioncon=DriverManager.getConnection("jdbc:oracle:thin:@"+e.getHost()+":"+e.getPort()+":xe",e.getLogin(),e.getSenha());returncon;}publicArrayList<Usuario>listar()throwsSQLException,Exception{Connectioncon=getConexao();Stringsql="select * from all_users order by user_id";Statementst=con.createStatement();ResultSetrs=st.executeQuery(sql);ArrayList<Usuario>colecao=newArrayList<Usuario>();while(rs.next()){Usuariouser=newUsuario();user.setNome(rs.getString("username"));user.setId(rs.getInt("User_id"));//user.setStatus(rs.getString("account_status"));colecao.add(user);}rs.close();st.close();con.close();returncolecao;}publicvoidexcluir(intcod)throwsSQLException{try{Connectioncon=getConexao();Stringsql="DELETE FROM all_users WHERE USER_ID = ?";PreparedStatementpst=con.prepareStatement(sql);pst.setInt(1,cod);pst.executeUpdate();}catch(Exceptionex){Logger.getLogger(UsuarioDao.class.getName()).log(Level.SEVERE,null,ex);}}publicvoidbloquear(intcod)throwsException{Connectioncon=getConexao();Stringsql="UPDATE all_users SET ACCOUNT_STATUS = 'LOCKED' WHERE user_id = ?";PreparedStatementpst=con.prepareStatement(sql);pst.setInt(1,cod);pst.executeUpdate();}
rafaelglauber
Oi,
Veja bem…para se conectar com o banco de dados você precisa de um usuário e uma senha, não é o banco de dados que vai te passar isso, é justamente o contrário, você deve fazer isso, normalmente esses valores ou você já coloca ai direto no código, ou colocar em arquivo texto e faz a leitura, ou armazena de qualquer outra forma, mas você só estabelece conexão com o servidor de banco de dados se tiver essa informação.
G
guialeixo
Oi,
Veja bem…para se conectar com o banco de dados você precisa de um usuário e uma senha, não é o banco de dados que vai te passar isso, é justamente o contrário, você deve fazer isso, normalmente esses valores ou você já coloca ai direto no código, ou colocar em arquivo texto e faz a leitura, ou armazena de qualquer outra forma, mas você só estabelece conexão com o servidor de banco de dados se tiver essa informação.
Olha eu so iniciante ainda sabe entao fica complicado pra mim as vezes, eu sei qu eo banco de dados precisa de um usuario e uma senha eu sei exatamente eu fiz uma aplicaçao grafica que os usuarios digitam esse valor por isso do objeto Entrada criado, porem nao da pra ficar passando toda hora esse objeto estou tentando buscar de arquivo esses dados entao vou gravar em txt temporario o que o usuario digitar e logo depois vou deletalo mas estou com muita dificuldade de colocar o login e a senha entre aspas veja o codigo
Novamente você esta colocando as vírgulas dentro da primeira String…seu método tem três parâmetros: URL, usuário e senha, as vírgulas servem para separa-los.
G
guialeixo
Cara eu sei mas como que eu vo concatenar virgula na string cara? esse ai q vc me mando da erro…