2012-02-21 17 views
6

he escrito un programa en C# para tirar algunos datos utilizando OdbcConnection:ODBC ConnectionString

using System.Data.Odbc; 
...... 

OdbcConnection OdbcConn = 
       new OdbcConnection(Properties.Settings.Default.ConnectionString); 
OdbcCommand cmd = new OdbcCommand(); 

//open connection 
if (OdbcConn.State != ConnectionState.Open) 
{ 
    OdbcConn.Open(); 
} 

En mi archivo de configuración, tengo este ConnectionString:

Dsn=****;uid=userID;pwd=password

Sin embargo no puedo establecer una conexión. Tengo un controlador de acceso de iseries de IBM corp instalado, pero si pruebo el acceso a MS, entonces puedo conectarme. ¿Alguna sugerencia?

Respuesta

9

En caso de duda (y se trata de cadenas de conexiones): http://www.connectionstrings.com/

+0

Simplemente haga clic en el tipo de base de datos que está utilizando en la parte superior para ver un buen ejemplo de lo que se echa en falta (Me he dado cuenta que no está diciendo que dónde conectar, es decir, nombre o IP) –

+0

hace cualquiera sabe cómo establecer la conexión DSN gratis usando el controlador – saiful

+0

¿Qué sucede si voy a configurar el ODBC usando Access en el servidor remoto? –

0

siempre me gusta para verificar la conexión utilizando la fuente de datos (ODBC) en el panel de control (asumir que está en el entorno de la ventana). Asegúrese de ver la unidad disponible en su selección de ODBC y siga los pasos para probar la conectividad.

como también se menciona por encima de las conexiones cuerdas sitio web le dará idea de qué propiedades y el formato en el que la conectividad

3

particular, conductor En una máquina Windows de 64 bits, asegúrese de comprobar si su código C# es compilado en x86 (32 -bit), x64 o "Cualquier CPU". Tenga en cuenta que si compila como "Cualquier CPU", elegirá los controladores de x64 bits de forma predeterminada.

Los controladores de 32 bits se pueden encontrar en C: \ windows \ SysWOW64 \ odbcad32.exe. Los controladores de 32 bits se pueden encontrar en C: \ windows \ system32 \ odbcad32.exe.

Primero, asegúrese de verificar que su conexión funciona con el Administrador de orígenes de datos ODBC utilizando las rutas que proporcioné anteriormente. Es decir. crea un DSN y pruébalo como sugirió Turbot. Una vez que haya verificado que esta conexión funciona, su cadena de conexión puede usar el DSN que acaba de crear o puede usar una cadena de conexión gratuita DSN.

Para una referencia rápida, aquí es una muestra de una cadena de conexión gratuita DSN mediante un controlador ODBC:

Driver = {Progress OpenEdge 11.3 Conductor}; HOST = wfdscr11.wf.local; Puerto = 1234 ; DB = MyDatabaseName; UID = Juan; PWD = Doe

En este ejemplo, yo tenía que conectarse a una base de datos de progreso de mi código C# y esta es la cadena de conexión utilicé sin tener que especificar un DSN. A continuación puede ver que el nombre del controlador es "Progress OpenEdge 11.3 Driver".

enter image description here

Cuestiones relacionadas