запрос базы данных sqlite3 нескольких таблиц - PullRequest
0 голосов
/ 29 марта 2011

В приведенном ниже примере используется одна таблица базы данных (животные), которая содержит три столбца (имя, описание, фотография).

Если моя база данных содержит две таблицы (1.animals, 2.Cities),каждый со своими столбцами (имя, описание, фотография), как я могу спросить, например.«имена городов», который расположен в столбце 1 таблицы 2., в сочетании с «описанием животных», расположенным в столбце 2 таблицы 1, чтобы создать объект с этими «значениями».

, ссылаясь на это ..... (char *) sqlite3_column_text (compiledStatement, 1) ....

Спасибо.

    // Open the database from the users filessytem
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
    // Setup the SQL Statement and compile it for faster access
    const char *sqlStatement = "select * from animals";
    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)];
            NSString *aDescription = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 2)];
            NSString *aImageUrl = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 3)];

            // Create a new animal object with the data from the database
            Animal *animal = [[Animal alloc] initWithName:aName description:aDescription url:aImageUrl];

1 Ответ

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

Если столбцами обеих таблиц являются name, description и photo, я не вижу связи между ними. В любом случае, вот оператор SQL, который делает то, что вы просите, но это не имеет особого смысла:

SELECT c.name, a.description FROM Cities AS c, animals AS a;

Если я неправильно понял ваш вопрос, дайте мне знать.

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