SQL Server - Procedimiento almacenado lento

   
Vista:

Procedimiento almacenado lento

Publicado por Jean Karlo jeank007@gmail.com (3 intervenciones) el 22/04/2016 18:50:55
Buenos días, tengo un procedimiento almacenado que copia la información de una tabla (se encuentra en la base de datos [RP3]) a otra tabla (otra base de datos) y esto a veces demora demasiado y a veces no copia toda la información. QUisiera saber como se puede optimizar. A contunuaciuon dejo el script del procedimiento almacenado (se utiliza SQL SERVER 2014).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
USE [DESA]
GO
/****** Object:  StoredProcedure [dbo].[P_Migracion_TraspasoPedido]    Script Date: 22/04/2016 10:23:47 a.m. ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
 
ALTER PROCEDURE [dbo].[P_Migracion_TraspasoPedido]
AS
BEGIN
	IF OBJECT_ID ('tempdb..[#Tmp_TRASPASO]') IS NOT NULL DROP TABLE #Tmp_TRASPASO
 
	DECLARE @TipoOrigenTraspaso_Id INT
	SET @TipoOrigenTraspaso_Id = ( SELECT TOP 1 TD.[id]
							FROM [Tipo] T INNER JOIN [TipoDetalle] TD on T.Id = TD.Tipo_id
							WHERE UPPER(T.[Descripcion]) = UPPER('Tipo Origen Traspaso')
								AND UPPER(TD.[Descripcion]) LIKE UPPER('%PEDIDO%'))
 
	SELECT DISTINCT T.[Codigo]
			, PD.[Codigo] AS [DocumentoOrigen]
		INTO #Tmp_TRASPASO
	FROM [ESTLMODB02].[RP3].[dbo].[Traspaso] T WITH(NOLOCK)
		INNER JOIN [Traspaso] TR WITH(NOLOCK) ON T.[Codigo] = TR.[Codigo]
		INNER JOIN [ESTLMODB02].[RP3].[dbo].[TraspasoDetalle] TD WITH(NOLOCK) ON TD.[Codigo] = T.[Codigo]
		INNER JOIN [ESTLMODB02].[RP3].[dbo].[PedidoDetalle] PD WITH(NOLOCK) ON PD.[Codigo] = T.[DocumentoOrigen] AND PD.[Sku] = TD.[Sku]
 
	UPDATE TR SET TR.[Pedido_Id] = P.[Id],
				  TR.[TipoOrigen_Id] = @TipoOrigenTraspaso_Id
	FROM #Tmp_TRASPASO T
		INNER JOIN [Traspaso] TR ON T.[Codigo] = TR.[Codigo]
		INNER JOIN [Pedido] P ON T.[DocumentoOrigen] = P.[Codigo]
 
	IF OBJECT_ID ('tempdb..[#Tmp_TRASPASO]') IS NOT NULL DROP TABLE #Tmp_TRASPASO
 
END
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

Procedimiento almacenado lento

Publicado por Isaias (3186 intervenciones) el 22/04/2016 20:03:35
¿Que VERSION - EDICION de SQL Server manejas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Procedimiento almacenado lento

Publicado por Jean Karlo (3 intervenciones) el 22/04/2016 20:13:27
utilizo Microsoft sql server 2014 Management studio .
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

Procedimiento almacenado lento

Publicado por Isaias (3186 intervenciones) el 24/04/2016 01:05:09
¿Porque no utilizas el servicio de INTEGRACION (SSIS)?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar