Hola a todos.
Estoy realizando un proyecto usando la clase común DBProviderFActory, para poder hacer conexiones con Bases de Datos de distintos proveedores.
Hasta ahorita la conexión con SQL y ORacle me ha funcionado bien. Con lo que tengo problemas es al realizar la conexión a ACCESS con ODBC y pasarle parámetros a el comando.
Tengo el siguiente código:
Código:
Public Sub EjecutaComando(ByVal sSentencia As String, ByVal sParametros As ArrayList)
Try
Me.Conexion()
Me.Comando(sSentencia)
Me.Parametros(sParametros)
Me.AbrirConexion()
mComando.ExecuteNonQuery()
Catch ex As DataException
Throw ex
Finally
Me.CerrarConexion()
End Try
End Sub
Public Sub Parametros(ByVal sParametros As ArrayList)
Dim sParametro As clsParametros
Dim Count As Integer
For count = 0 To sParametros.Count - 1
sParametro = CType(sParametros(count), clsParametros)
Dim mParametro As DbParameter
mParametro = mComando.CreateParameter()
mParametro.ParameterName = IIf(mTipoServidor = enTipoServidor.ORACLE, sParametro.Nombre.Replace("@", ":"), sParametro.Nombre)
If (sParametro.EsNumero) Then
mParametro.DbType = DbType.Decimal
mParametro.Value = sParametro.ValorEntero
Else
mParametro.DbType = DbType.String
mParametro.Value = sParametro.ValorCadena
End If
mComando.Parameters.Add(mParametro)
Next
End Sub
:
El error que me da al ejecutar la consulta es el siguiente.
"ERROR [07006] [Microsoft][Controlador ODBC Microsoft Access]Infracción del atributo de tipo de datos restringido"
Si alguien me pudiera ayudar se le agradece.