2011-11-27 2 views
2

SQLite 데이터 사전에있는 모든 테이블 및 테이블 열의 이름을 알려주시겠습니까?SQLite 데이터 사전 테이블 및 열

업데이트 : 내가 개발 있어요 Basic4Android 응용 프로그램이 정보를 사용하고 있었다

.

' Create the PeopleToVisit table which holds lookup data about each visit. 
'------------------------------------------------------------------------- 
If SQL.ExecQuerySingleResult(_ 
    "SELECT count(name) FROM sqlite_master WHERE type='table' AND name='PeopleToVisit'") _ 
    = 0 Then 

    ToastMessageShow("Creating the People to Visit table.", False) 

    ' Create it now since it doesn't yet exist. 
    '------------------------------------------ 
    SQL.ExecNonQuery("CREATE TABLE PeopleToVisit (" & _ 
     "Id INTEGER PRIMARY KEY, " & _ 
     "FirstName TEXT, " & _ 
     "LastName TEXT, " & _ 
     "Address1 TEXT, " & _ 
     "Address2 TEXT, " & _ 
     "City TEXT, " & _ 
     "State TEXT, " & _ 
     "Zip TEXT " & _ 
     ")") 
End If 

' New table columns for Version 1.2 
'---------------------------------- 

' Coding for when new data columns need to be added to the database table. 
'------------------------------------------------------------------------- 
strCreateTableStatement = _ 
    SQL.ExecQuerySingleResult("SELECT sql " & _ 
           "FROM sqlite_master " & _ 
           "WHERE Type = 'table' AND name = 'PeopleToVisit'") 

' Check if the new columns are in the table. 
'------------------------------------------- 
If strCreateTableStatement.IndexOf("PrimaryPhone TEXT") = -1 Then 

    ' We need to add the new columns to the table. 
    '--------------------------------------------- 
    SQL.ExecNonQuery("ALTER TABLE PeopleToVisit ADD COLUMN PrimaryPhone TEXT") 
    SQL.ExecNonQuery("ALTER TABLE PeopleToVisit ADD COLUMN SecondaryPhone TEXT") 
    SQL.ExecNonQuery("ALTER TABLE PeopleToVisit ADD COLUMN Email TEXT") 
    SQL.ExecNonQuery("ALTER TABLE PeopleToVisit ADD COLUMN LastVisitNote TEXT")  
End If 

답변

3

테이블에 대한

pragma table_info(table_name) 
+0

덕분에 모든 열을 나열하려면 데이터베이스

SELECT name FROM sqlite_master WHERE type='table' 

의 모든 테이블을 나열하려면 다음은

내가 사용하는 코딩의 실제 세그먼트 대답. 나는 sqlite_master를 사용하여 정보를 찾았다. 게시물에 대한 업데이트를 참조하십시오. –

+0

'SQL.ExecQuery ("pragma table_info ('PeopleToVisit')")와 같은'SELECT' 문과 마찬가지로'pragma table_info (table_name)'을 사용할 수 있습니다. – tidwall

+0

SQL 문 예를 들어 주셔서 감사합니다. 나는 그것을 시도 할 것이다. :-) –

관련 문제