Share via


웹에 SQL 프로그래밍 기능 제공

Microsoft SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 응용 프로그램은 수정하십시오.

HTTP SOAP 끝점을 만들거나 업데이트할 때 저장 프로시저나 사용자 정의 함수를 웹 메서드로 표시할 수 있습니다. 웹 메서드는 저장 프로시저를 위한 CREATE PROCEDURE, 사용자 정의 함수를 위한 CREATE FUNCTION과 같은 Transact-SQL 문을 사용하여 이미 생성되었으며 끝점을 통한 웹 액세스를 위해 정의된 기존의 저장 프로시저나 사용자 정의 함수입니다.

저장 프로시저나 사용자 정의 함수를 서버에 만든 후에는 끝점 DDL 문 CREATE ENDPOINT 또는 ALTER ENDPOINT를 사용하여 웹 메서드로 표시되게 할 수 있습니다.

[!참고]

테이블 값을 반환하는 사용자 정의 함수는 지원되지 않습니다.

웹 메서드 매개 변수 이름 지정 지침 및 제한

사용자 정의 함수와 저장 프로시저에 사용되는 매개 변수는 SQL Server 이름 지정 규칙에 따라 올바른 형식의 이름을 지정해야 합니다. 자세한 내용은 식별자를 개체 이름으로 사용매개 변수 이름 지정을 참조하십시오.

때로 네이티브 XML 웹 서비스 액세스에 사용할 수 없는 사용자 정의 함수와 저장 프로시저 이름의 경우 예전에 사용되었지만 현재는 사용되지 않는 유형의 이름 지정 규칙이 허용됩니다. SQL Server 매개 변수 이름 지정 규칙에서 허용되지만 이제는 사용되지 않으며 사용자 정의 함수나 저장 프로시저를 웹 메서드로 표시할 때 허용되지 않는 매개 변수 이름은 다음과 같습니다.

@

@@

@@this_is_not_a_global

네이티브 XML 웹 서비스 액세스를 통해 표시하려면 요청된 프로시저나 함수에서 위와 같은 사용되지 않는 매개 변수 이름을 수정하여 @param 표준 형식 이름의 매개 변수가 사용되도록 해야 합니다.

시스템 저장 프로시저 표시

SQL Server에서는 시스템 저장 프로시저를 사용하여 여러 가지 정보 및 관리 작업을 수행할 수 있습니다. 경우에 따라 이러한 프로시저를 HTTP 끝점을 통해 액세스할 수 있는 웹 서비스 메서드로 표시해야 할 때가 있습니다.

시스템 저장 프로시저는 모두 시스템 Resource 데이터베이스에 저장되지만 모든 시스템 저장 프로시저가 올바른 스키마를 표시하기 위해 서버 생성 WSDL(Web Service Description Language) 응답을 허용하는 메타데이터 정보를 가지고 있지는 않습니다. 이로 인해 HTTP 끝점에서 일부 시스템 저장 프로시저를 표시할 때 예상대로 작동하지 않는 상황이 발생할 수 있습니다.

시스템 저장 프로시저를 사용자 지정 SQL Server 관리 솔루션의 일부로 표시할 수 있는 다른 방법은 다음과 같습니다. 다음의 방법을 사용하여 특정 시스템 저장 프로시저를 액세스할 수 없는 상황을 해결할 수 있습니다.

  • 첫째, 시스템 저장 프로시저를 단순 비재귀적으로 사용할 경우 HTTP 끝점에서 표시할 시스템 저장 프로시저를 래핑하는 사용자 정의 저장 프로시저를 만듭니다.

  • 둘째, 여러 저장 프로시저를 중첩 호출하기 때문에 앞의 방법이 관리하기가 너무 복잡하거나 다루기 어려운 것으로 판단될 경우 대신 sqlbatch 메서드를 사용할 수 있습니다. sqlbatch 사용 방법에 대한 예는 SOAP 요청 메시지 구조를 참조하십시오.