как получить таблицы по типу в sqlite - PullRequest
0 голосов
/ 23 марта 2011

HI люди,

Я получаю все таблицы из моей базы данных.

мой код

if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
        // Setup the SQL Statement and compile it for faster access

        const char *sqlStatement = "SELECT * FROM sqlite_master where type='table'";
        sqlite3_stmt *compiledStatement;
        if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
            // Loop through the results and add them to the feeds array
            while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
                // Read the data from the result row
                NSString *aName = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 1)];


                [categoriesList addObject:aName];


            }
        }

        // Release the compiled statement from memory
        sqlite3_finalize(compiledStatement);

    }

, но мне нужно добавить несколько таблиц в один массив, а расширение необходимо добавить в другой массив.

например: у меня есть таблицы, такие как фрукты, цветы, ... и другие таблицы, такие как list1, list2, list3.

мне нужно получить фрукты, цветы ... в один массив, а списки1, список2 ... нужно добавить в другой массив. Потому что я отображаю все элементы в фруктах, цветах ....

И в list1, list2 я сохраняю все выбранные элементы среди этих категорий.

но используя приведенный выше код, я получаю весь список таблиц.

Может кто-нибудь, пожалуйста, помогите мне.

(позвольте мне добавить комментарий, если кто-то не получил мой вопрос)

Спасибо заранее. Как я могу получить таблицы по-другому.

Ответы [ 2 ]

0 голосов
/ 23 марта 2011

Вы можете проверить, что имя таблицы начинается с "list", используя hasPrefix:

if ([aName hasPrefix: @ "list"]) // true, если aName начинается с "list"

[listCategoriesList addObject: aName];

еще

[otherCategoriesList addObject: aName];

0 голосов
/ 23 марта 2011

Чтобы разделить таблицы на две группы, вам нужно как-то различать их. Либо вы заранее знаете, какие таблицы должны принадлежать list1, либо list1 должен содержать все таблицы, начинающиеся с 'f', или все таблицы с нечетным числом строк, или ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...