2010-07-20 6 views
9

Qt/C++에서 SQLite를 사용하여 데이터베이스의 구조를 확인하는 가장 좋은 방법이 무엇인지 궁금합니다. SQLite를 사용하여 데이터베이스가 포함 된 파일이 있으므로 프로그램을 시작할 때 데이터베이스가 구조화되어 있어야합니다. 즉, 자신의 Y 열이있는 X 테이블이 있어야합니다. , 적절히 이름 붙여진, 등등. 누군가 올바른 방향으로 나를 가리킬 수 있습니까? 정말 고마워!데이터베이스의 구조를 확인 하시겠습니까? (C++/Qt의 SQLite)

당신이 쿼리와 데이터베이스의 모든 테이블의 목록을 얻을 수 있습니다

답변

6

:

select tbl_name from sqlite_master; 

그리고 각 테이블 반환을 위해, 얻을이 쿼리를 실행 열 정보

pragma table_info(my_table); 

들어 pragma의 경우 결과 집합의 각 행에는 열 인덱스, 열 이름, 열의 유형 선호도, 열이 NULL인지 여부 및 열의 기본값이 포함됩니다.

(난 당신이 SQLite는 C 인터페이스의 데이터베이스에 대해 SQL 쿼리를 실행하는 방법을 알고 여기에 있으리라 믿고있어.)

+0

옳은 길에 나를 설정해 주셔서 감사합니다. – Joseph

2

당신이 QT를 따라서 QtSql 손을 경우, 당신은 또한 QSqlDatabase::tables() (API doc을 사용할 수 있습니다) 메서드를 사용하여 테이블을 가져오고 QSqlDatabase::record(tablename)은 필드 이름을 가져옵니다. 또한 기본 키를 제공 할 수도 있지만 자세한 내용은 table_infopragma를 사용하는 pkh의 조언을 따라야합니다.

관련 문제