에 매개 변수 값을 전달하는 방법 : 입력 매개 변수를 전달하는 방법을 나는 확실하지 않다내가 SQL 서버 2005 (관리 Studio IDE)에서 다음 T-SQL 쿼리를 사용하여 오전 T-SQL 쿼리
DECLARE @id int;
DECLARE @countVal int;
DECLARE @sql nvarchar(max);
SET @id = 1000;
SET @sql = 'SELECT COUNT(*) FROM owner.myTable WHERE id = @id';
EXEC (@sql) AT oracleServer -- oracleServer is a lined server to Oracle
@id를 EXEC 쿼리에 추가하고 카운트 결과를 @countVal로 전달합니다. 내가 좋아하는 마이크로 소프트 SQL 서버에 대한 몇 가지 예 보았다 : 나는 오라클이 시도
EXEC (@sql, @id = @id)
을하지만 난 문 오류 가지고 :
OLE DB provider "OraOLEDB.Oracle" for linked server "oracleServer"
returned message "ORA-00936: missing expression"
EXEC() 예제는 Oracle에서 작동하지 않습니다. 매우 슬프다. @sql의 매개 변수가 없다면 정상적으로 실행됩니다. 필자는 SQL에 출력 매개 변수가있는 Oracle 데이터베이스에 대한 통과 쿼리를 사용할 단서가 없습니다. –
SET @sql = '선택 하시겠습니까? = count (*) from owner.mytable '; oracleServer의 exec (@sql, @countVal 출력) - Oracle의 경우 오류 –
이 접근법의 문제점은 임시 테이블을 작성하지 않고 다른 저장 프로 시저에서 결과 세트를 리턴 할 수 없다는 것입니다 (가능하지 않음). 동적 쿼리와 함께) ...이 기능을 않는가? –