Название: Неверный тип при чтении ключа из БД Отправлено: Freackle от Октябрь 16, 2011, 19:48 Здравствуйте!
У меня ошибка при чтении ключей query->prepare("select S_Key from `subject` where S_Name=:S_Name;"); query->bindValue(":S_Name", Sub); query->exec(); int size =query->size(); //размер 1, тоесть он выбирает нужное мне значение. int lol=query->value(0).userType(); //QVariant Invalid не читает его. int ololo=query->value(0).toInt(); //Соответственно, записывает сюда ноль. В базе ключи записаны как INT(10) NOT NULL AUTO_INCREMENT, PRIMARY KEY. Помогите, пожалуйста. Название: Re: Неверный тип при чтении ключа из БД Отправлено: BuRn от Октябрь 16, 2011, 20:16 точно не могу сказать, но мб попробовать
while(query.next()) { ... твои присваивания } Название: Re: Неверный тип при чтении ключа из БД Отправлено: Freackle от Октябрь 16, 2011, 20:34 У меня ведь всего одна запись выбирается, я пройду этот цикл один раз. И само это значение оно выбирается, он просто не понимает его тип почему-то.
Название: Re: Неверный тип при чтении ключа из БД Отправлено: Mikhail от Октябрь 16, 2011, 21:29 Все таки стоит слушать советы и читать документацию.
Все- таки next() сделать требуется, чтобы прочитать первую запись и так далее For example: QSqlQuery query("SELECT country FROM artist"); while (query.next()) { QString country = query.value(0).toString(); doSomething(country); } Название: Re: Неверный тип при чтении ключа из БД Отправлено: Freackle от Октябрь 16, 2011, 21:48 Простите, спасибо вам большое.
Название: Re: Неверный тип при чтении ключа из БД Отправлено: Странник от Октябрь 16, 2011, 23:35 для одной записи можно first() использовать.
|