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

Problemas con un SP

Estas en el tema de Problemas con un SP en el foro de SQL Server en Foros del Web. Tengo un SP que no termina de ejecutar y truena... algúna idea: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código SQL: Ver original CREATE PROCEDURE [ dbo ] . [ ...
  #1 (permalink)  
Antiguo 11/07/2014, 09:48
Avatar de Inicia  
Fecha de Ingreso: octubre-2010
Ubicación: Actualmente en GDL
Mensajes: 135
Antigüedad: 13 años, 6 meses
Puntos: 1
Problemas con un SP

Tengo un SP que no termina de ejecutar y truena... algúna idea:

Código SQL:
Ver original
  1. CREATE PROCEDURE [dbo].[UPSERT_SURVEYS]        
  2.          
  3. --WITH EXECUTE AS OWNER        
  4.        
  5. AS        
  6. SET NOCOUNT ON          
  7.        
  8. BEGIN        
  9. --BEGIN TRY        
  10.        
  11. MERGE INTO tblSurveys  WITH (HOLDLOCK) AS tgt        
  12.   USING [dbo].[tblSurveysStaging] src        
  13.    ON (tgt.[CASE_ID] + tgt.[COMPLETED] = src.[CASE_ID] + src.[COMPLETED])        
  14.   WHEN MATCHED THEN        
  15.     UPDATE SET        
  16.     TGT.[FCR] = SRC.[FCR],        
  17.     TGT.[CSAT]= SRC.[CSAT],        
  18.     TGT.[COMMENTS] = SRC.[COMMENTS],        
  19.     TGT.[CUSTOMER_EMAIL] = SRC.[CUSTOMER_EMAIL],        
  20.     TGT.[COMPLETED] = SRC.[COMPLETED],        
  21.     TGT.[TITLE] = SRC.[TITLE],        
  22.     TGT.[AGENT_EMAIL] = SRC.[AGENT_EMAIL],        
  23.     TGT.[COUNTRY] = SRC.[COUNTRY]        
  24.   WHEN NOT MATCHED BY TARGET THEN        
  25.     INSERT ( [CASE_ID]        
  26.    ,[FCR]        
  27.    ,[CSAT]        
  28.    ,[COMMENTS]        
  29.    ,[CUSTOMER_EMAIL]        
  30.    ,[COMPLETED]        
  31.    ,[TITLE]        
  32.    ,[AGENT_EMAIL]        
  33.    ,[COUNTRY])        
  34.  VALUES (        
  35.    SRC.[CASE_ID]        
  36.    ,SRC.[FCR]        
  37.    ,SRC.[CSAT]        
  38.    ,SRC.[COMMENTS]        
  39.    ,SRC.[CUSTOMER_EMAIL]        
  40.    ,SRC.[COMPLETED]        
  41.    ,SRC.[TITLE]        
  42.    ,SRC.[AGENT_EMAIL]        
  43.    ,SRC.[COUNTRY]);        
  44.        
  45. DELETE FROM  tblSurveysStaging;
  46. DELETE FROM tblSurveys WHERE dateDIFF(DAY,CONVERT(DATETIME,Completed),CONVERT(DATETIME,getdate()))>365;
  47.  
  48.  
  49.  
  50. --END TRY        
  51. --BEGIN CATCH        
  52. --DELETE FROM  tblSurveysStaging;        
  53. --END CATCH        
  54. END

O se imaginan que otra cosa puede estar bloqueando...Se los agradezco muchísimo...
  #2 (permalink)  
Antiguo 11/07/2014, 10:09
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Problemas con un SP

estas usando un HOLDLOCK esto puede causar que se quede bloqueada la tabla y mas si se ejecuta un delete despues de eso, ya revisaste el plan de ejecucion de tu proceso? ya intentaste hacer un insert/update manual no usando merge???

te recomiendo una leida a este post:

http://sqlserverplanet.com/sql-2008/...erge-statement
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: Ninguno
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




La zona horaria es GMT -6. Ahora son las 22:01.