Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   Servidores vinculados... sobrepasan mi inteligencia (https://www.clubdelphi.com/foros/showthread.php?t=51349)

Gaim2205 13-12-2007 00:50:00

Servidores vinculados... sobrepasan mi inteligencia
 
Hola amigos del foro, me dirigo a ustedes con la misma duda de hace poco mas de un mes acerca de servidores vinculados. Estuve trabajando en otro proyecto por lo cual no le puse mucha atencion a eso hasta ahora que lo retomo.

La verdad no tengo idea de que es lo que pasa, Mi problema sigue siendo:
Cita:

Necesito vincular una base de datos Paradox a Sql Server 2000
He probado de mil formas (con multiples connection strings, dsn de sistema, reinstalando drivers odbc, usando Jet 4.0, ya no se ni que mas).
consultado decenas de foros, con topicos donde la gente pregunta acerca del el mismo error una y otra vez, con diferentes proveedores y smdb's.. (oracle, db2, sybase, etc...)

Yo requiero vincular ya sea paradox o access.. el error especifico que tengo es: "OLE DB Provider 'MSDASQL' reported an error. The provider did not give any information about the error. OLE DB Error trace[OLE/DB Provider 'MSDASQL' IDBInitialize::Initialize returned 0x80004005: The provider did not give any information about the error]

El problema no es al crear el servidor vinculado, sino al tratar de abrir las tablas de la b.d. que contiene

Por favor alguien mas iluminado que yo. Se agradece mucho su ayuda.

Caral 13-12-2007 02:28:56

Hola
Que yo sepa Paradox no es familia de access o ms sql server.
He vinculado Access con mysql facilmente.
Supongo que vincular Access y Ms SqlServer seria lo mismo.
Saludos

Neftali [Germán.Estévez] 13-12-2007 10:00:30

Comobien dice Carlos, Paradox no es "familia directa" de MSSQL, pero igualmente puedes vincularlo. En este caso deberás hacerlo vía ODBC; Los pasos a seguir son los siguientes:

Para crear un servidor vinculado y obtener acceso a una base de datos ODBC cuando se usa un origen de datos ODBC:
  1. Cree un origen de datos del sistema en el equipo en el que está instalado SQL Server.
  2. Ejecute sp_addlinkedserver para crear el servidor vinculado y especifique MSDASQL o NULL como provider_name y el nombre de un origen de datos del sistema ODBC como data_source.
    Los orígenes de datos de usuario ODBC no se pueden utilizar para las consultas distribuidas porque SQL Server se ejecuta como un servicio en Microsoft Windows y los servicios no siempre tienen acceso a los orígenes de datos de usuario. Por ejemplo, un origen de datos del sistema con el nombre SystemDSN hace referencia a un servidor que está ejecutando SQL Server y cuya base de datos predeterminada es AdventureWorks :
    sp_addlinkedserver 'SQLAdWorks', ' ', 'MSDASQL', 'SystemDSN'
Los servidores vinculados pueden usar el proveedor OLE DB para ODBC sin usar un origen de datos ODBC. El servidor vinculado se define en un paso. Toda la información que el proveedor OLE DB para ODBC necesita para ubicar un controlador ODBC y conectarse a un origen de datos ODBC debe estar definida en provider_string.
Si se define un servidor vinculado con el proveedor OLE DB para ODBC y tiene acceso a una base de datos de SQL Server, se aplican las siguientes restricciones:
  • No se puede hacer referencia a las tablas si tienen al menos una columna timestamp.
  • No se puede hacer referencia a las tablas si tienen columnas char, varchar, nchar, nvarchar, binary o varbinary que puedan aceptar valores NULL y si la opción ANSI_PADDING se estableció en OFF al crear la tabla.
El link con la información completa es este.

Gaim2205 13-12-2007 15:27:01

Gracias por sus respuestas, si, yo sé que Paradox no es familia de MSSQL, pero como dice neftali, cualquier se pueden vincular(al igual que access, db2, oracle, etc.) con la instruccion sp_addlinkedserver.

Ya he hecho esto y no tengo ningun problema, el servidor vinculado se "agrega". Tanto con un DSN de sistema como con una provider string.

El problema es al tratar de abrir las tablas, me encuentro con ell error que especifiqué en mi primer mensaje.

Aunque no sabia acerca de las restricciones que menciona neftali, lo voy a checar. Pero en caso de que mis tablas esten "bloqueadas" por las restricciones (que es lo mas probable), no hay forma de pasarlo por alto?

Edicion: Aunque:
Cita:

Si se define un servidor vinculado con el proveedor OLE DB para ODBC y tiene acceso a una base de datos de SQL Server, se aplican las siguientes restricciones
Entonces esas restricciones no aplican ya que las b.d a las que intento accesar una es Paradox y la otra access. (un linked server para c/u) con sus respectivos DSN o connection strings por supuesto. Adjunto links a imagenes que muestran mi proceso
http://img514.imageshack.us/img514/9...andodsnnh0.jpg
http://img514.imageshack.us/img514/7...dserverko8.jpg
http://img138.imageshack.us/img138/302/errorrd1.jpg

Gracias...

Neftali [Germán.Estévez] 13-12-2007 17:30:52

¿La version de las MDAc está actualizada?

Gaim2205 13-12-2007 17:33:44

asi es, al bajar la ultima version me da el mensaje de que ya todo esta actualizado


La franja horaria es GMT +2. Ahora son las 04:00:01.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi