은 cfstoredproc를 사용하여 저장 프로 시저를 만들 수 있습니까? 다음을 실행하면 구문이 잘못되었습니다. 'GO'근처에 구문이 있습니다..cfstoredproc을 사용하여 저장 프로 시저 만들기
<cffile action="read" file="mypath/myFile.sql" variable="sp_1">
<cfstoredproc procedure="sp_executesql" dataSource="#getDatasource()#">
<cfprocparam type="in" cfsqltype = "cf_sql_varchar" value ='#sp_1#'>
</cfstoredproc>
myFile.sql
IF OBJECT_ID('getMyData', 'P') IS NOT NULL
DROP PROC getMyData
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE getMyData
@some_var AS NVARCHAR(200)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sql AS NVARCHAR(MAX)
SET @sql = N'SELECT * FROM myTable where id = ''' + @some_var + ''' '
EXEC sp_executeSQL @sql
END
<cfquery name="createGetMyData" dataSource="#getDatasource()#">
#preservesinglequotes(sp_1)#
</cfquery>
SSMS에서 해당 코드를 실행하면 절차가 만들어 지거나 오류가 발생합니까? –
드라이브가 맘에 들지 않거나 오해를 불러 일으킬 수 있습니다. 내가 보는 유일한 것은 "PROC"입니다 ... 나는 대개 PROCEDURE라고 쓰여 있습니다. –
다음은 몇 가지 다른 것들입니다. 입력 변수는 대개 괄호 안에 있습니다. - CREATE PROCEDURE getMyData (@some_var AS NVARCHAR (200))'set nocount를 사용하면 대개 세미콜론을 보지 못합니다. 따옴표 붙은 식별자가 ON 일 때 나는 대개 [dbo]. [getMyData] ...와 select 문과 같이 사용자 식별자 또는 dbo를 보았습니다. 나는 그들을 일상적으로 사용하지 않는다. 단지 그것을 믹스에 추가한다. –