метод
QSqlField::setValue(value)
И в его предназначение вникнуть не получается (читал документацию)
Но на примере этого класса могу понять, что метод
QSqlField::field(index)
получает имя поля, однако абстрактно не осмыслю
Прошу прощение за беспокойство, вы очень хорошо осведомлены в этой теме
@angry_subst
Прошу, если только вы не против помочь
Например когда ты пишешь свой плагин базы данных. Живой пример, плагин для шифрования sqlite https://github.com/devbean/QtCipherSqlitePlugin/blob/develop/sqlitecipher/sqlitecipher.cpp#L301
ну вообще там все очевидно, QSqlField презентует тебе поле из таблицы БД со всеми вытекающими. Многое зависит от драйвера БД, но в общем случае через QSqlFiled ты можешь узнать имя поля, его тип, автоинерментный он или нет, дефолтное значение, обязательное поле или нет и т.д. и т.п это в принципе же есть в Асситанте, или я не догоняю суть вопроса
Не понимаю, что такое поле. У меня оно ассоциируется с колонкой в таблице базы данных, но вероятно, что это не так
ну по сути это именно так
Ага, подбираемся к главному с чего начинал, а как колонка может иметь значение? И что из себя представляет это значение
из теории реляционных баз таблица - представляет собой достаточное и необходимое описание какого-то объекта поле таблицы - какая то характеристика этого самого объекта.
не понятно, что тебя смущает то?
Table состоит из Record, Record из Field.
Формально колонка (поле) не может иметь одно значение, так как она определяет свойства множества объектов Я бы не задавался этим вопросом, например, если дополнительно в аргументах задавался индекс записи, как если бы мы это делали прямо через модель model->index(...).data(Role) Думаю моя проблема в том, что я ищу сходство этих методов, как один из способов получения данных ячейки в позиции row, column записи: QSqlRecord::value(int index) const QSqlField ::value() const При попытке прочесть value получаю ничего Это стало интересно для меня, а документация плохо прописала этот момент. Без кода, конечно, трудно понять
кажется сообразил... если ты заберешь QSqlRecord record=model->record(); ты получишь структуру таблицы, без каких-либо значений если ты возьмешь QSqlRecord record=model->record(row_number); ты получишь реальную выборку всей записи № row_number из таблицы ну и развивая мысль... дальше ты можешь получить полную информацию о каком-то поле QSqlField из всей записи в одном варианте либо просто характеристики поля, например тип поля (строка, логическое, интеджер и т.д.) в другом варианте можешь и конкретное значение этого поля в этой строке получить
Обсуждают сегодня