Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Problema con conexión a Netbeans

Estas en el tema de Problema con conexión a Netbeans en el foro de Oracle en Foros del Web. Gente, buenas tardes: Tengo un problema con mi conexión de Netbeans a Oracle. Ya teniendo instalado el ojdbc14 y hecha la conexión a la base ...
  #1 (permalink)  
Antiguo 23/11/2011, 15:37
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Problema con conexión a Netbeans

Gente, buenas tardes:

Tengo un problema con mi conexión de Netbeans a Oracle.

Ya teniendo instalado el ojdbc14 y hecha la conexión a la base de datos, intento introducir elementos en mi aplicación de escritorio, y al presionar el botón "guardar", me lanza este mensaje:

java.sql.SQLexception: excepcion de e/s: invalid connection string format,
a valid format is "host:port:sid"


Publico acá los códigos de la clase constructora(configuración del botón), y del procedimiento almacenado SP_Ingreso_Constructora


private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

String id_constructora = txtIdConstructora.getText().toUpperCase();
String nombre_constructora = txtNombreConstructora.getText().toUpperCase();
String direccion_constructora = txtDireccionConstructora.getText().toUpperCase();
int telefono_constructora = Integer.parseInt(txtTelefonoConstructora.getText() );
String contacto_constructora = txtContactoConstructora.getText().toUpperCase();

String driver = "oracle.jdbc.driver.OracleDriver";
String dsn = "jdbc:oracle:thin:@:localhost:1521:XE";
String sql = "{call SP_IngresarConstructora(?,?,?,?,?)}";

String usuario = "tallerbd";
String password = "oracle";

try {
Class.forName(driver);
Connection con = DriverManager.getConnection(dsn, usuario, password);
CallableStatement cstmt = con.prepareCall(sql);


cstmt.setString(1,id_constructora);
cstmt.setString(2,nombre_constructora);
cstmt.setString(3,direccion_constructora);
cstmt.setInt(4,telefono_constructora);
cstmt.setString(5,contacto_constructora);

if (cstmt.execute()) {
JOptionPane.showMessageDialog(null, "La Constructora no pudo ser ingresada");
} else {
JOptionPane.showMessageDialog(null, "Datos ingresados correctamente");
}

cstmt.close();
con.close();
} catch (Exception e1) {

JOptionPane.showMessageDialog(null, e1);
}
}


Acá viene el procedimiento almacenado:


package procedimiento.almacenado;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
* @author Rodrigo Alejandro González
* Taller BD Primavera 2011
*/

public class SP_Ingreso_Constructora extends negocio.Constructora{

private Connection Conexion;
private CallableStatement cstmt = null ;

public SP_Ingreso_Constructora()
{
super();
Conexion = null;
}

public SP_Ingreso_Constructora(Connection Con, String id_constructora,
String nombre_constructora,
String direccion_constructora,
int telefono_constructora,
String contacto_constructora)
{
super(id_constructora, nombre_constructora,
direccion_constructora, telefono_constructora,
contacto_constructora);

Conexion = Con;
}

public void Agrega() throws ClassNotFoundException, SQLException
{
//Class.forName("com.microsoft.sqlserver.jdbc.SQLSer verDriver"); Sentencia SQL Server

Class.forName("oracle.jdbc.driver.OracleDriver");

//Connection con=DriverManager.getConnection("jdbc:sqlserver://MARTE:1433;DatabaseName=Prueba", "sa", "gsiinformatica");

Connection con=DriverManager.getConnection("jdbc:oracle:thin: tallerbd/oracle@:localhost:1521:XE"); //, "tallerbd", "oracle");
//URL ==> jdbc:oracle:thin:@localhost:1521:XE
CallableStatement cstmt = con.prepareCall("{call SP_IngresarConstructora(?,?,?,?,?)}");

cstmt.setString(1,id_constructora);
cstmt.setString(2,nombre_constructora);
cstmt.setString(3,direccion_constructora);
cstmt.setInt(4,telefono_constructora);
cstmt.setString(5,contacto_constructora);

cstmt.execute();
con.close();
}
}

Cualquier ayuda se agradece.
  #2 (permalink)  
Antiguo 25/11/2011, 16:59
Avatar de juamd  
Fecha de Ingreso: marzo-2009
Ubicación: Bogotá
Mensajes: 285
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Problema con conexión a Netbeans

Que tal !!!

Tienes la cadena de conexion mal formada, el formato es asi:

Código:
con=DriverManager.getConnection(
"jdbc:oracle:thin:@miservidor:puerto:esquema",
"usuario","contraseña");

Saludos.
__________________
Dejenme saber cuando estoy equivocado y cuando estoy en lo cierto dejenme saber si existe una solución mejor.
  #3 (permalink)  
Antiguo 26/11/2011, 12:23
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Respuesta: Problema con conexión a Netbeans

Es que yo hice lo msimo con SQL Server y funcionó de maravillas, pero con esto de Oracle, ni hablar.

Qué sería lo que tengo que cambiar entonces???
La configuración del botón o la clase que llama al procedimiento almacenado???


Salu2
  #4 (permalink)  
Antiguo 30/11/2011, 12:49
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Problema con conexión a Netbeans

String dsn = "jdbc:oracle:thin:@:localhost:1521:XE";

Los : después de la arroba están de más

String dsn = "jdbc:oracle:thin:@localhost:1521:XE";

Así si. illón de gracias!!!

Etiquetas: netbeans, procedimiento_almacenado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:44.