Red de conocimiento informático - Conocimiento informático - El problema de que el parámetro entrante en SQL dinámico en el procedimiento almacenado es del tipo fecha y hora

El problema de que el parámetro entrante en SQL dinámico en el procedimiento almacenado es del tipo fecha y hora

Primero depuralo, falta @ y comienzo y fin

Además la variable de empalme no puede estar dentro de la cadena, es inútil

crear procedimiento [dbo].[baobiao1]

@ fecha1 fecha y hora,

@ fecha2 fecha y hora

como

establecer nocount en

comenzar

Establecer XACT_ABORT en ON;

Comenzar transcripción

Declarar @SQL1 varchar(8000)

Declarar @SQL2 varchar( 8000)

--Establecer @SQL='Crear vista A como selección...'

--Exec(@SQL)

si existe ( SELECCIONE * DESDE sysobjects DONDE nombre = 'report1')

comenzar

soltar vista informe1

final

establecer @SQL1='crear ver informe1 como select s.englishName,s.belongzu,count(*) kaitai,

jiachan=(caso s.shiftName cuando ''一'' luego suma(s.realproduc) else 0 final),

jiachaochan=(case s.shiftName cuando ''A'' luego suma(s.realproduc-s.singleplan*s.workminuto/60) else 0 final),

yichan =(caso s.shiftName cuando ''B'' luego suma(s.realproduc) else 0 final),

yichaochan=(caso s.shiftName cuando ''B'' luego suma(s.realproduc -s.singleplan*s.workminuto/60) else 0 final),

bingchan=(case s.shiftName cuando''婷''entonces suma(s.realproduc) else 0 final), p>

bingchaochan=(case s.shiftName when''婷''then sum(s.realproduc-s.singleplan*s.workminute/60) else 0 end),

dingchan =( caso s.shiftName cuando''ding''entonces suma(s.realproduc) else 0 final),

dingchaochan=(caso s.shiftName cuando''ding''entonces suma(s.realproduc -s .singleplan*s.workminute/60) else 0 end),

(caso cuando s.shiftName =''一''entonces sum(p.cibushu) else 0 end) jiacibu,

(caso cuando s.shiftName =''二''entonces suma(p.cibushu) else 0

end) yicibu,

(caso cuando s.shiftName =''婷''entonces suma(p.cibushu) else 0 end) bingcibu,

(caso cuando s.shiftName = ''ding''entonces suma(p.cibushu) más 0 fin) dingcibu,

(caso cuando s.shiftName =''甲''entonces suma(p.kaijianshu) más 0 fin) jiakaijian,

(caso cuando s.shiftName =''咀''entonces suma(p.kaijianshu) else 0 final) yikaijian,

(caso cuando s.shiftName =''哩' 'entonces suma(p.kaijianshu) más 0 fin) bingkaijian,

(caso cuando s.shiftName =''ding''entonces suma(p.kaijianshu) más 0 fin) dingkaijian

de la unión exterior izquierda de HistoryPro1 s kaijianjicibu2 p en s.wholeDate = p.wholeDate AND

s.MachineID = p.MachineID AND

s.shiftName = p.shiftName donde s .wholeDate >='+@date1+' y s.wholeDate <='+@date2=' agrupan por s.englishName,s.belongzu,s.shiftName'

exec(@SQL1)

confirmar Tran

end

establecer nocount en

GO