2012-11-08 4 views
2

난 그냥 TADOQuery 구성 요소를 사용하여 "선택"SQL 문을 실행하기 위해 노력하고 있지만, TADOQuery의는 "열기"때 문이 나는 다음과 같은 오류가 무엇입니까 실행 :는 폐쇄 데이터 세트에서이 작업을 수행 할 수 없습니다

 
Cannot perform this operation on a closed dataset... 
ADOQuery1.Active := False; 
ADOQuery1.SQL.Clear; 
ADOQuery1.SQL.Add('Select * from Table1 where Column1 = <value>'); 
ADOQuery1.Open; 

이 오류가 발생하는 이유는 무엇입니까?

+1

D7에 문제가있는 경우 2010 또는 2009 라벨을 추가하면 안됩니다. – ComputerSaysNo

+0

코드를 표시하십시오. 코드가 없다면 우리는 추측 이상의 것을 할 수 없습니다. –

+1

쿼리에 연결된 이벤트 처리기 (OnBeforeOpen) 또는 마스터/세부 데이터 소스가 있습니까? madExcept와 같은 도구를 사용하여 예외가 발생하는 정확한 코드 위치를 찾을 수도 있습니다. 소스 파일 이름과 줄 번호로 표시됩니다. – mjn

답변

2

코드가 정상적으로 보입니다.

쿼리에 첨부 된 이벤트 처리기 (OnBeforeOpen) 또는 마스터/세부 데이터 소스가 있는지 확인하십시오. 이 경우 여전히 닫혀있는 다른 데이터 집합이 오류를 일으킬 수 있습니다.

0

문제가 해결되었습니다. SQL Server 2008을 데이터베이스로 사용하고 있습니다.

여기에 "SetAppRole"이 적용되지 않았으므로 적용한 후에 오류가 없습니다.

관련 문제