Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

delete openquery(abc,...?????? Servidor Vinculado

Estas en el tema de delete openquery(abc,...?????? Servidor Vinculado en el foro de SQL Server en Foros del Web. (MSSQL 2000 con servidor Vinculado MySQL) Hola.. quiero hacer un delete con un join ... a un servidor vinculado (mysql)... Esta es la instrucción.. Código ...
  #1 (permalink)  
Antiguo 23/06/2010, 16:55
Avatar de vrenzo  
Fecha de Ingreso: febrero-2007
Mensajes: 289
Antigüedad: 17 años, 9 meses
Puntos: 15
Pregunta delete openquery(abc,...?????? Servidor Vinculado

(MSSQL 2000 con servidor Vinculado MySQL)
Hola.. quiero hacer un delete con un join ... a un servidor vinculado (mysql)...

Esta es la instrucción..

Código PHP:
delete OPENQUERY(MYSQLservervincu,'select web_p123.c,web_p123.c,web_p123
.cod_documento,web_p123.num_documento,web_p123.nombre1, web_p123.nombre2
FROM web_p123 inner join  web_p_temp on web_p_temp.c=web_p123.c_c'

Tambien de esta forma pero igual da error...
Código PHP:
delete OPENQUERY(MYSQLservervincu,'select web_p123.* FROM web_p123 
inner join  web_p_temp on web_p_temp.c=web_p123.c'


Este es le mensaje de error
Código PHP:
---------------------------
delete_repetidos
---------------------------
El proveedor OLE DB 'MSDASQL' no puede eliminar en la tabla 'select web_p123.* 
FROM web_p123 inner join  web_p_temp on web_p_temp.c=web_p123.c_'
El 
conjunto de filas utiliza simultaneidad optimista y el valor de una columna cambió 
desde que se recuperó o volvió a sincronizar por última vez la fila que la contiene
.

---------------------------
Aceptar   
--------------------------- 
La conexion es ok con el servidor vinculado.. ya que hago otras consultas, update,insert...

Creo que la sintaxis es incorrecta para poder hacer un delete con un Join...

Alguna idea...
__________________
***
Saludos.
  #2 (permalink)  
Antiguo 23/06/2010, 17:27
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Y si lo intentas con una estructura como esta??:

SELECT * FROM OPENQUERY (MYSQLservervincu, 'DELETE tubase.owner.tabla db_name.owner.tabla WHERE tufiltro');
  #3 (permalink)  
Antiguo 24/06/2010, 08:28
Avatar de vrenzo  
Fecha de Ingreso: febrero-2007
Mensajes: 289
Antigüedad: 17 años, 9 meses
Puntos: 15
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Hola...
No da resultado...

Da el siguiente mensaje... :(

Código SQL:
Ver original
  1. El proveedor OLE DB 'MSDASQL' indica que el objeto no tiene columnas.
__________________
***
Saludos.
  #4 (permalink)  
Antiguo 24/06/2010, 09:35
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Entonces, no se esta cumpliendo el query
  #5 (permalink)  
Antiguo 24/06/2010, 09:39
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 19 años, 3 meses
Puntos: 39
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Prueba asi:
Código SQL:
Ver original
  1. DELETE FROM OPENQUERY(MYSQLservervincu,'select * FROM web_p123  
  2. where exists(select 1 from web_p_temp where web_p_temp.c=web_p123.c)')
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #6 (permalink)  
Antiguo 24/06/2010, 09:58
Avatar de vrenzo  
Fecha de Ingreso: febrero-2007
Mensajes: 289
Antigüedad: 17 años, 9 meses
Puntos: 15
De acuerdo Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Muy interesante... sabia que era por algo incorrecto en la sintaxis....

Funciono correctamente ...

Muchas Gracias....
__________________
***
Saludos.
  #7 (permalink)  
Antiguo 24/06/2010, 16:04
Avatar de vrenzo  
Fecha de Ingreso: febrero-2007
Mensajes: 289
Antigüedad: 17 años, 9 meses
Puntos: 15
Información Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Agregare estos datos que me ayudaron con los demas puntos de manejo del OPENQUERY y un Servidor vinculado...

-como pasar datos de Mysql a SQL 2005.

Paso 1 : Instalando los drivers de MySQL ODBC que me permita manejar la base Mysql.

Ubicación : En el servidor central donde esta la base SQL Server 2005

Debes bajar el Conector ODBC para MySQL de la siguiente web :

http://dev.mysql.com/downloads/connector/odbc/

Paso 2 : Creando el ODBC y configurando para que apunte al servidor Mysql y a la base a manipular.

Paso 3 : Vinculando el servidor Mysql con SQL Server 2005

Entramos al administrador coorporativo del SQL Server 2005 y buscamos la opción "Objetos del servidor". Dentro existe una subcarpeta llamada "Servidores vinculados".

Hacemos clic derecho sobre Servidores vinculados y buscamos la opción "Nuevo servidor vinculado".

Se abrirá la ventana "Nuevo servidor vinculado" donde debes colocar los parametros para conectarse con la base MySQL.

Paso 4 : Probando consultas SQL en el servidor vinculado.

Veamos algunos ejemplos de sentencias SQL con openquery.

select * from openquery (LINKED_MYSQL,'select * from aaa')

Delete openquery (LINKED_MYSQL,'select * from aaa'). ¡Borramos todos los datos de la tabla 'aaa'!

insert into openquery(LINKED_MYSQL,'select * FROM aaa')
(Field1, Field2,...)
SELECT Field1, Field2,...
FROM Tabla

Update openquery(LINKED_MYSQL,'Select * from aaa') SET Cod_Ind = 7
WHERE Cod_Ind = 7.5
...........

Fuente:
http://www.vidainformatico.com/2010/...con-mysql.html
__________________
***
Saludos.
  #8 (permalink)  
Antiguo 26/05/2017, 17:07
 
Fecha de Ingreso: enero-2007
Mensajes: 27
Antigüedad: 17 años, 9 meses
Puntos: 0
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

Ademas de eso, da permiso a TODOS los usuario, control total, a la carpeta donde esté el archivo vinculado. En mi caso SQLite.db

Esto resolvió este error:
El proveedor OLE DB "MSDASQL" del servidor vinculado no pudo eliminar datos de la tabla
  #9 (permalink)  
Antiguo 29/05/2017, 07:23
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: delete openquery(abc,...?????? Servidor Vinculado

7 años despues no creo que siga teniendo la duda ;)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: openquery, vinculado, servidores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 15:59.