Получение целочисленного значения из базы данных SQlite - PullRequest
1 голос
/ 27 ноября 2011

У меня проблема с получением целочисленного значения из базы данных SQLite. У меня болезнь Integer, хранящаяся в БД. В моем классе болезни я объявил это как NSNumber * sickid.

При чтении из базы данных я делаю

NSNumber *illid = [NSNumber numberWithInt:(int)sqlite3_column_text(compiledStatement, 0)];
..........
[listContent addObject:[Illness illnessWithid:illid illness:illness defn:definition]];

где listcontent - это массив NSMutable.

Теперь я передаю объект болезни другому классу и пытаюсь получить болезнь, чтобы запросить базу данных.

NSNumber *myno = illness.illnessid;
NSInteger illid = [myno integerValue];

но этот illid не является целочисленным значением, хранящимся в дБ. Мне нужна помощь с этим!

1 Ответ

0 голосов
/ 28 ноября 2011

Вы извлекаете значение из базы данных SQLite как char * и пытаетесь явно привести его к int.Это невозможно.В качестве альтернативы просто извлеките значение непосредственно как int.

Изменить эту строку ...

NSNumber *illid = [NSNumber numberWithInt:(int)sqlite3_column_text(compiledStatement, 0)];

на ...

NSNumber *illid = [NSNumber numberWithInt:sqlite3_column_int(compiledStatement, 0)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...