Hola, muy buenas a todo@s
Tengo un problema a la hora de conectar desde una aplicación vb.net a una BBDD Oracle 9i.
Tengo instalado el Oracle Client 9.2.0, como Administrador. También he instalado los ODBC’s
He configurado el TSNAMES.ora
Y he dado permisos a la Carpeta Oracle, para el usuario con el que estoy trabajando.
Me da error al conectar en la BBDD. Os pongo parte de mi código a ver si alguien me puede echar una mano.
Deciros que he estado mirando por el foro y por Internet pero no he conseguido solucionarlo.
VB .Net
Código:
Dim conConexion As New ADODB.Connection()
Dim strCadenaConexion As String 'Cadena de conexión con la BBDD
Dim strSQL As String 'Sentencia SQL que se envía a Oracle
‘--------------------------------------------------------------------------
‘Boton para la conexión
Private Sub ConectarBBDD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ConectarBBDD.Click
strSQL = "SELECT IDUsuario FROM usrSat.Usuarios"
If EjecutarSQL(strSQL) = -1 Then
MsgBox("error al leer de la BBDD") ‘Este es el error que me da!!
Else
MsgBox(strSQL)
End If
End Sub
‘--------------------------------------------------------------------------
‘Funcion que ejecuta la sentencia SQL y llama a la function para conectarse
Public Function EjecutarSQL(ByVal strSelect As String, Optional ByVal AbrirCerrar As Boolean = False, Optional ByVal strOperacion As String = "") As Integer
'Si no hay conexion con la BBDD la abrimos
If conConexion.State <> ConnectionState.Open Then
If ConectarConBBDD() = -1 Then Return -1
End If
'Ejecutamos la instruccion SQL
Try
conConexion.Execute(strSelect)
Catch e As Exception
Dim strError As String
strError = "Error en EjecutarSQL() el comando:" + vbCrLf + strSelect + vbCrLf + e.Message
oErrores.MostrarError(strError)
If AbrirCerrar Then
Me.DesconectarDeBBDD()
End If
Return -1 'Si hay errores no continuamos
End Try
Return 0
End Function
‘--------------------------------------------------------------------------
'Funcion para conectarse a la BBDD
Public Function ConectarConBBDD() As Short
'Si ya hay nonexion, no se realiza nada
If CBool((conConexion.State And ConnectionState.Open)) Then Return 0
'Establece la cadena de conexion
strCadenaConexion = "UID=<usuario>; PWD=<contraseña>; DSN=MSDORA; SERVER=<servidor>;"
'NO HE CONSEGUIDO ESTABLECER LA CONEXION
'Crea la conexión y la abre
conConexion.ConnectionString = strCadenaConexion
strSQL = "SELECT <columna> FROM <tabla>"
With conConexion
.ConnectionString = strCadenaConexion
.CursorLocation = CursorLocationEnum.adUseClient
'Abrir la conexion
Try
.Open()
Catch ex As Exception
Dim strError As String
strError = "Error en ConectarConBBDD()" + vbCrLf + ex.Message
oErrores.MostrarError(strError)
ConexionCorrecta = False
Return -1
End Try
Return 0
End With
End Function
Agradezco todas las ayudas.
Gracias y saludos.