Таблицы и столбцы словаря данных 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

person Emad-ud-deen    schedule 27.11.2011    source источник


Ответы (1)


Чтобы перечислить все таблицы в базе данных

SELECT name FROM sqlite_master WHERE type='table'

Чтобы перечислить все столбцы в таблице

pragma table_info(table_name)
person tidwall    schedule 27.11.2011
comment
Спасибо за ответ. Я использовал sqlite_master для поиска информации. Пожалуйста, смотрите обновление, которое я сделал для сообщения. - person Emad-ud-deen; 28.11.2011
comment
Вы можете использовать оператор pragma table_info(table_name) так же, как оператор SELECT, например SQL.ExecQuery("pragma table_info('PeopleToVisit')"). - person tidwall; 28.11.2011
comment
Спасибо за пример оператора SQL. Я попробую это. :-) - person Emad-ud-deen; 28.11.2011