Crear una conexión mediante DNS

11/08/2004 - 16:46 por Ana | Informe spam
Hola
Tengo creado un DNS a una bbdd de Access llamado clien. Quiero crear una
conexión a ella de la siguiente manera desde un servicio web:
OleDbConnection conn = new OleDbConnection("DNS = clien;");

Y me salta el siguiente error

"No se ha especificado un proveedor OLE DB en ConnectionString. Un ejemplo
sería, 'Provider=SQLOLEDB;'."

¿Como debo hacerlo?

GRACIAS

Preguntas similare

Leer las respuestas

#1 JuanDG
11/08/2004 - 18:41 | Informe spam
Debes especificar el data provider y todos los datos de conexion en el
connection string

aca te va un ejemplo en VB.NET
Imports System.Data.OleDb
...
Dim oOleDbConnection As OleDbConnection
Dim sConnString As String = _
"Provider=sqloledb;" & _
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"User Id=myUsername;" & _
"Password=myPassword"
oOleDbConnection = New OleDb.OleDbConnection(sConnString)
oOleDbConnection.Open()

espero que te sirva

Juan David Gomez A.
Microsoft Certified Professional
Analista de Desarrollo - PSL S.A.
Web and Wireless Banking

"Ana" wrote in message
news:%
Hola
Tengo creado un DNS a una bbdd de Access llamado clien. Quiero crear una
conexión a ella de la siguiente manera desde un servicio web:
OleDbConnection conn = new OleDbConnection("DNS = clien;");

Y me salta el siguiente error

"No se ha especificado un proveedor OLE DB en ConnectionString. Un


ejemplo
sería, 'Provider=SQLOLEDB;'."

¿Como debo hacerlo?

GRACIAS


Respuesta Responder a este mensaje
#2 Ana
11/08/2004 - 19:08 | Informe spam
Hola JuanDG,

No es esto lo que queria, sino lo siguiente. Tengo un DSN(me habia
confundido antes) creado. Y quiero acceder a la BD de Access mediant este
DSN.

Gracias
Respuesta Responder a este mensaje
#3 CESAR DE LA TORRE [Microsoft MVP]
11/08/2004 - 20:21 | Informe spam
Probablemente el problema está en que para usar un DSN tienes que utilizar
el PROVEEDOR ODBC de ADO.NET en lugar del proveedor OLEDB de ADO.NET con el
que estás probando ahora.
Ejemplo en VB.NET con el proveedor ODBC de ADO.NET:
Imports System.Data.Odbc
...
Dim oODBCConnection As OdbcConnection
Dim sConnString As String = "Dsn=miDsn;" & _
"Uid=miUsuario;" & _
"Pwd=miPassword"
oODBCConnection = New Odbc.OdbcConnection(sConnString)
oODBCConnection.Open()De todas formas, Ana, ten mucho cuidado con lo que vas
a hacer, es decir, comentabas que querías acceder a una base de datos ACCESS
desde un WebService.
Si es solamente para un prueba o similar, está bien, pero si es para una
aplicación real, es muy peligroso.
Un WebService está diseñado para ser un sistema ESCALABLE, es decir, que si
está bien implementado, puede soportar perfectamente muchos usuarios
simultáneos (realmente aplicaciones cliente utilizadas por usuarios)
accediendo a dicho WebService. Del orden de decenas, cientos o incluso miles
de usuarios si 'clonas' el mismo WebService en un balanceador de carga como
NLB, Cisco LocalDirector, Alteon, etc.. Hasta aquí, OK.
Sin embargo, ACCESS es una Base de Datos pensada para utilizarse localmente
en un PC por un solo usuario. Si el WebService accede a una Base de datos
Access, en el momento en que varios usuarios accedan al WebService (por
ejemplo mas de 5 usuarios), el rendimiento caerá en picado e incluso podrás
tener problemas de bloqueos y malos funcionamientos.

Resumiendo, si es para una prueba o ejemplo, está bien, pero si no, utiliza
un SGBD multi-usuario serio, como SQL Server, Oracle o incluso para pocos
usuarios y no mas de 2GB de datos, puedes utilizar MSDE (Microsoft Data
Engine) que tiene el mismo motor de B.D. que SQL Server, pero 'capado' y
solamente te deja un número máximos de usuarios y una cantidad máxima de
datos. Pero tiene un rendimiento comparable con SQL Server (es practicamente
igual) y además tienes la ventaja de que es gratis (no se cobra su
licencia). Para administrar B.D. de MSDE instala en un PC las herramientas
de Administración de SQL Server, arrancas el 'Enterprise Manager' y te
conectas al servidor de MSDE. A partir de ahí se administra igual que un SQL
Server 2000.

César de la Torre
[Microsoft MVP - .NET XML WebServices]
[MCSE] [MCT]

Renacimiento
Microsoft GOLD Certified Partner
www.renacimiento.com


"Ana" wrote in message
news:
Hola JuanDG,

No es esto lo que queria, sino lo siguiente. Tengo un DSN(me habia
confundido antes) creado. Y quiero acceder a la BD de Access mediant este
DSN.

Gracias



Respuesta Responder a este mensaje
#4 Ana
11/08/2004 - 21:24 | Informe spam
Hola Cesar,
Ahora tengo otro problema es que no me reconoce el espacio de nombres
System.Data.Odbc.

¿Que puedo hacer?

Gracias
Respuesta Responder a este mensaje
#5 CESAR DE LA TORRE [Microsoft MVP]
12/08/2004 - 01:22 | Informe spam
¿Estas usando Visual Studio .NET 2003 (.NET Framework 1.1) o estás usando
Visual Studio .NET (.NET Framework 1.0)?
Porque System.Data.Odbc viene en Visual Studio .NET 2003 (.NET Framework
1.1).
En el caso 'bueno' (Visual Studio .NET 2003 (.NET Framework 1.1)), te
reconoce el namespace 'System.Data.Odbc' automaticamente.

Me parece que debes de estar trabajando con la versión 1.0 de .NET
Framework...
En este caso, te tienes que bajar el setup del proveedor ODBC ADO.NET de la
siguiente URL:
http://www.microsoft.com/downloads/...65078e32b1

También tienes que instalar la última versión de MDAC. Ahora mismo es MDAC
2.8:
http://www.microsoft.com/downloads/...layLang=en

Sigue este procedimiento para utilizar el proveedor ODBC de ADO.NET:
http://support.microsoft.com/defaul...-US;310988 (con C#)
ó
http://support.microsoft.com/defaul...S;310985#2 (con
VB.NET)
Pero las URLs para bajarte el software son correctas las que te digo yo
arriba. Las que aparecen en esos artículos son antiguas, han cambiado. El
resto de cada artículo es correcto.

Saludos,

César de la Torre
[Microsoft MVP - .NET XML WebServices]
[MCSE] [MCT]

Renacimiento
Microsoft GOLD Certified Partner
www.renacimiento.com


"Ana" wrote in message
news:
Hola Cesar,
Ahora tengo otro problema es que no me reconoce el espacio de nombres
System.Data.Odbc.

¿Que puedo hacer?

Gracias


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida