응용 프로그램에 대한 설정 NOCOUNT : 액세스 VBA + ADO 데이터베이스는 폐쇄 비정상적인 프롬프트 객체

전기 공급 업체웨어 하우스는 SQL에서 저장 프로 시저가 더 이상 실행되지 일부 호출 바코드 라벨 인쇄 구두 상자를 대체하는 엑셀 파일을 작성, 엑셀 결과 아닙니다에;

 

 조심스럽게 VBA 코드를 조회하고 이상이없는 것으로 나타났습니다, 그것은 저장 프로 시저 자체에 문제를 의심하기 시작,
다음과 같이 :

절차 [dbo가]를 생성. SelectViewForTp]
@biid VARCHAR (20 인),
VARCHAR (20 임) @inco
AS
(가) 시작
Exec을 p_SelectInsertTp는 @biid
VARCHAR (20 임) @sku DECLARE을
DECLARE의 @error의 INT의
SET @sku = (인코로부터 SELECT SwapCodeForVis. 1을 상위 및 인코 biid = @biid WHERE @inco 및 tqty> cqty의 +에 수량 희망)의 같은
SET = 0 @error
SwapCodeForVis SET에 수량 희망의 업데이트 = +1 수량 희망의 인코에 = WHERE @sku
SET의 @error @@ 오류 = + @error
IF = 0 @error
 시작
 , LEFT (inve.inse, LEN ( 'NO'로서 AS SELECT 인코 "상품 코드"타이코 '등 inve.inse) -3) 색'brin.brde '브랜드'로서
  , 순시 AS '유일한 제품 민' '카테고리', 변환 등의 prty.tyna (INT, (RIGHT '로 (INCO, 2) +10) /0.2) 신발', '성능 기준'으로 콜로
  '민 재료'CONVERT (날짜, current_timestamp- 같은 inve.rema '등 30,12) 제조일'
  INVE에서
  브린 ON brin.bran = 가입 inve.bran
  조인 PRTY ON prty.inty = inve.inty
  인코 = @sku
 끝

그 자체가 드문 일이 아니다 문을 확인하지만, 첫 번째 이벤트의 과정으로 인해이라는 시간 VBA를 생각하는 추가 공정하고 삽입을 호출하는 대신 하나 개의 쿼리 값이;

플러스의 필요성 쿼리 플러스 오프 세트 NOCOUNT 이전까지, 그 과정에서의 설정 NOCOUNT에서 시작, 같은 호출 할 때 엑셀 비정상적인 표시 VBA;

그래서 VBA 쿼리의 결과 세트를 직접 호출 호출 할 때 정상 결과를 :

 

 

 

추천

출처www.cnblogs.com/azrealer/p/11819672.html