2016-10-13 11 views
0

나는 embarcadero C++ builder를 사용하고 있으며 DBGrid에 포함 된 쿼리의 결과를 복사하려고합니다. DBGrid에서 각 행을 가져 오는 방법이 있습니까?C++의 TDBGrid에서 각 행을 얻는 방법

+0

C++에는 TDBGrid가 없습니다. C++ Builder에서 사용할 수있는 태그가 있습니다. 일반 C++ 태그 대신 사용하십시오. –

답변

0

"결과 복사"와 사용중인 데이터베이스 유형에 따라 다릅니다. 일반적으로 TDBGrid은 시각적으로 데이터를 표시하고 편집하는 데 사용됩니다. 데이터베이스에서 정보를 가져 와서 데이터 구조에 넣는 것이 가장 효율적인 방법은 아닙니다.

그래서 원하는 결과가 SQL 결과 집합의 각 행에 대해 (비 시각적으로) 수행되는 경우 TSQLQuery을 사용해야합니다. 이 객체에는 결과 집합을 반복 할 수있는 유용한 메서드 및 속성 (예 : First(), Next() 및 Eof)이 있습니다.

0

TDBGrid의 결과가 직접 표시되지 않습니다. TDbGrid에 연결된 TDataSource에 연결된 TDataSet에서 가져옵니다. IOW, 쿼리를 실행하는 데 사용하는 TQuery/TADOQuery/TSQLQuery에서 직접 읽습니다. 사용중인 DBMS 및 데이터 구성 요소에 대해 언급하지 않았으므로 더 구체적으로 설명하는 것은 불가능합니다. 당신은 그리드를 클릭하고 그것을 검사하여 (IDE에서) 디자인 타임에 쿼리를 실행하는 구성 요소를 찾을 수 있습니다

는 오브젝트 인스펙터의 속성에 DataSource 재산을 당신에게 이름을 줄 것이다 페이지를의 TDataSource 구성 요소. 해당 데이터 소스를 클릭하고 DataSet 속성을 검사하면 SQL 문을 실행하는 쿼리 구성 요소의 이름이 표시됩니다. 해당 구성 요소를 읽으면 명령문을 실행하여 리턴 된 데이터를 검색 할 수 있습니다.