SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Proc [dbo].[q_sp]
@num int,
@num nvarchar(2)
As
declare @sql nvarchar(760)
declare @ParmDefinition nvarchar(100)
Begin
SET NOCOUNT ON
SET LOCK_TIMEOUT 15000
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
set @sql=N'select a.num,b.name from (select * from atable with(nolock) where num='''+convert(nvarchar(50),@num)+''' and cnum='''+convert(nvarchar(2),@cnum)+''') a
inner join btable b with(nolock) on a.name=b.name '
SET @ParmDefinition = N'@num NVARCHAR(50),@cnum nvarchar(2)'
exec sp_executesql @sql,@ParmDefinition,@num = @num,@cnum = @cnum
SET NOCOUNT OFF
End
adhoc 쿼리를 수정하려고 하고 있습니다. 저런식으로 만들어서 프로시져화 하면 정상적으로 작동되는것인지
인터넷검색 으로 만들어 본것이긴한데 제대로 된것인지 모르겠습니다.
어떻게 짜야 올바르게 만들수 있을까요?