Wednesday, May 23, 2012

How to get a list of column names on sqlite3 / iPhone?


I want to migrate my iPhone app to a new database version. Since I don't have some version saved, I need to check if certain column names exist.



This Stackoverflow entry suggests doing the select




SELECT sql FROM sqlite_master
WHERE tbl_name = 'table_name' AND type = 'table'



and parse the result.



Is that the common way? Alternatives?


Source: Tips4all

3 comments:

  1. PRAGMA table_info(table_name);


    will get you a list of all the column names.

    ReplyDelete
  2. If you have the sqlite database, use the sqlite3 command line program and the commands:
    .tables - to list all the tables in the database
    .schema tablename - to show the schema for the given table

    ReplyDelete
  3. you can use Like statement if you are searching for any particular column

    ex:

    SELECT * FROM sqlite_master where sql like('%LAST%')

    ReplyDelete