La Web Imágenes Vídeos Noticias Grupos Libros Gmail Más »
Grupos visitados recientemente | Ayuda | Acceder
Página principal de Grupos de Google
Anexar datos desde un recordset
En este grupo hay demasiados temas que deben mostrarse primero. Para que este aparezca al principio de la lista, debes descartar esta opción para alguno de los anteriores.
Error al procesar tu solicitud. Por favor, inténtalo de nuevo.
marcar
  7 mensajes - Ocultar todos  -  Traducir todo al Traducido (ver todos los originales)
El grupo al cual envías entradas es un grupo Usenet. Si envías mensajes a este grupo, cualquier usuario de Internet podrá ver tu dirección de correo electrónico
Tu respuesta no se ha enviado.
Tu entrada se ha publicado correctamente.
 
De:
Para:
Cc:
Seguimiento:
Añadir Cc | Añadir seguimiento | Editar asunto
Asunto:
Validación:
Con fines de verificación, escribe los caracteres que veas en la imagen siguiente o los números que escuches haciendo clic en el icono de accesibilidad. Escucha y escribe los números que oyes.
 
raipon  
Ver perfil  
 Más opciones 5 nov, 11:23
Grupos de noticias: microsoft.public.es.sqlserver
De: "raipon" <raimoneg...@hotmail.com>
Fecha: Thu, 5 Nov 2009 18:23:10 +0100
Local: Jue 5 nov 2009 11:23
Asunto: Anexar datos desde un recordset
Hola, me veo en la necesidad de insertar registros desde un Adodb.Recordset.
En estos momentos mediante un doble bucle recorro los registros (y los
fields) de dicho objeto y paso los valores de cada fila y cada campo a un
procedimiento almacenado que realiza el insert.

La pregunta : Seria más eficaz pasar a un store procedure una cadena xml que
permita insertar directamente un conjunto de filas. Lo pregunto porque al
mirar un plan de ejecución con esta última estrategia, veo que para sql
server tiene un coste elevado recorrer dicho conjunto de filas (obtenido con
OpenXml), ya que realiza un Scan.

Muchas gracias.


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
Carlos Sacristan  
Ver perfil  
 Más opciones 5 nov, 11:40
Grupos de noticias: microsoft.public.es.sqlserver
De: "Carlos Sacristan" <nom...@nomail.com>
Fecha: Thu, 5 Nov 2009 18:40:36 +0100
Local: Jue 5 nov 2009 11:40
Asunto: Re: Anexar datos desde un recordset
Igual lo puedes hacer todo en una única instrucción INSERT ... SELECT si nos
indicas exactamente qué es lo que estás haciendo.

--
-----------------------------
"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático

"raipon" <raimoneg...@hotmail.com> wrote in message

news:%23vdPZyjXKHA.4688@TK2MSFTNGP06.phx.gbl...


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
raipon  
Ver perfil  
 Más opciones 5 nov, 12:00
Grupos de noticias: microsoft.public.es.sqlserver
De: "raipon" <raimoneg...@hotmail.com>
Fecha: Thu, 5 Nov 2009 19:00:06 +0100
Local: Jue 5 nov 2009 12:00
Asunto: Re: Anexar datos desde un recordset
Hola, gracias por responder.
El escenario es el siguiente, tengo una serie de datos que quiero incorporar
a un servidor Sql Server 2005. Estos datos están contenidos en archivos
obtenidos con el método Save de un Adodb.Recordset. Para pasar los datos a
Sql Server, desde una aplicación intermedia, abro recordsets que tienen el
origen en dichos archivos, recorro sus filas y mediante un objeto command
que tiene como orígen un store procedure voy insertando de registro en
registro.
Los recordsets (mediante el método save ) pueden generar también una cadena
xml. He probado a pasar directamente esa cadena a un procedimiento
almacacenado y mediante OpenXml obtener un conjunto de filas valido para
poder insertar todos los registros a la vez. Sin embargo antes realizar
pruebas en un escenario real, he probado el réndimiento de n inserts de un
solo registro (pasando un valor para cada campo) y un conjunto de n filas
obtenido mediante OpenXml, y veo que el plan de ejecución real considera
mucho más rápido el insertar n filas de una en una.

    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
Samuel-SMH  
Ver perfil  
 Más opciones 5 nov, 16:35
Grupos de noticias: microsoft.public.es.sqlserver
De: "Samuel-SMH" <ssan_migu...@hotmail.com>
Fecha: Thu, 5 Nov 2009 17:35:15 -0500
Local: Jue 5 nov 2009 16:35
Asunto: Re: Anexar datos desde un recordset
Hola,
muchas veces el tiempo de respuesta tambien varia deacuerdo a la cantidad de
datos.
pero que yo sepa  con XML debería ser rapido, cómo te digo, quizas en tu
prueba usaste pocos registros, pero cuando trabajes con miles ahi notarás la
diferencia.
Ademas no sólo depente del tiempo de ejecución, sino tambien de los recursos
que utiliza esa operación, ambas van de la mano.
1 a 1 pude tomarte 1 miliseg.
xml pude tomarte 1 miliseg.
 pero en recursos
1 a 1 te puede consumir 10% CPU
xml te puede consumir 1% CPU

Esto quiere decir que cuando te quedes con poco recursos en CPU ahí sufrirá
en ejecutarse tu proceso 1 a 1.

Saludos.
Samuel S.M.H

"raipon" <raimoneg...@hotmail.com> escribió en el mensaje de
noticias:eyucCHkXKHA.1...@TK2MSFTNGP05.phx.gbl...


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
Carlos Sacristan  
Ver perfil  
 Más opciones 6 nov, 02:45
Grupos de noticias: microsoft.public.es.sqlserver
De: "Carlos Sacristan" <nom...@nomail.com>
Fecha: Fri, 6 Nov 2009 09:45:39 +0100
Local: Vie 6 nov 2009 02:45
Asunto: Re: Anexar datos desde un recordset
¿Por qué no usas un paquete de Integration Services para ese tipo de cargas
masivas? Se pensaron justamente para tareas como las que comentas

--
-----------------------------
"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es fácil, si ambas están congeladas."
Edward V. Berard, ingeniero informático

"raipon" <raimoneg...@hotmail.com> wrote in message

news:eyucCHkXKHA.1232@TK2MSFTNGP05.phx.gbl...


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
raipon  
Ver perfil  
 Más opciones 6 nov, 02:52
Grupos de noticias: microsoft.public.es.sqlserver
De: "raipon" <raimoneg...@hotmail.com>
Fecha: Fri, 6 Nov 2009 09:52:25 +0100
Local: Vie 6 nov 2009 02:52
Asunto: Re: Anexar datos desde un recordset
Gracias por responder.

Al final lo he probado ya en situación real, con una cantidad de registros
representativa, y el rendimiento es mucho mejor pasando directamente una
cadena xml que valor a valor, registro a registro. Sin embargo me queda la
duda de si realmente la mejoría está solo en la lógica de la aplicación que
hace de pasarela, pues con el primer método tan solo tiene que obtener el
xml mediante un método propio del objeto : Save, mientras que con el segundo
hay un bucle para recorrer los registros, y otro para recorrer los fields.
En fin, sea como sea, a pesar de la sorpresa al leer los resultados del
'plan de ejecución', el rendimiento es mucho mejor en el primer caso. Muchas
gracias.


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
raipon  
Ver perfil  
 Más opciones 6 nov, 02:58
Grupos de noticias: microsoft.public.es.sqlserver
De: "raipon" <raimoneg...@hotmail.com>
Fecha: Fri, 6 Nov 2009 09:58:53 +0100
Local: Vie 6 nov 2009 02:58
Asunto: Re: Anexar datos desde un recordset
Lo siento Carlos, me olvidé comentar que tengo la versión Express, por tanto
no dispongo de esta posibilidad.

Un saludo.


    Responder    Responder al autor    Reenviar  
Debes registrarte antes de enviar mensajes.
Para enviar una entrada, antes deberás formar parte del grupo.
Antes de enviar entradas, actualiza tu alias en la configuración de la suscripción.
No dispones del permiso necesario para enviar entradas.
Fin de los mensajes
« Volver a “Debates” « Tema más reciente     Tema anterior »

Crear un grupo - Grupos de Google - Página principal de Google - Condiciones del servicio - Política de privacidad
©2009 Google