Лучшее место для начала работы с Qt Database Interface - PullRequest
2 голосов
/ 24 августа 2009

Меня спрашивали об использовании интерфейса базы данных Qt для Oracle.

Что является хорошей отправной точкой для расследования этого? У вас есть какой-нибудь опыт, которым вы можете поделиться?

1 Ответ

2 голосов
/ 24 августа 2009

Мы используем классы QtSql уже пару лет, в настоящее время мы используем драйвер ODBC для подключения к экземпляру MSSql. В целом весь интерфейс работает достаточно хорошо. Он полностью изолирует вас от драйвера базы данных QSqlDatabase, QSqlQuery и QSqlResult на переднем крае, есть некоторые абстракции, которые также изолируют вас от фактических SQL QSqlTableModel и QSqlRelationalTableModel, но они предназначены для использования в любом из Qt просмотров. Существует также класс QDataWidgetMapper, который помогает сопоставлять данные с не табличными представлениями. Также QVariant отлично справляется с обертыванием данных SQL и обеспечивает типизированный доступ к результату запроса. Хотя все это очень полезно, если ваше приложение не является небольшим по объему, оно не избавит вас от необходимости создавать достойный уровень DAO, ни один из классов Qt не обеспечивает этого.

У нас есть процесс, в котором мы превращаем пользовательское xml-описание в sql-скрипт для создания таблицы, класс-оболочку qt для QSqlRecord, и мы используем QSqlTableModel для большей части нашей работы с CRUD. Это работает достаточно хорошо, но в этих классах много работы, поэтому я бы не стал повторять этот подход.

Мы нашли некоторые причуды с драйвером ODBC, я уверен, что есть некоторые причуды с драйвером оракула. ОТО, мы достаточно уверены, что сможем переключиться с MS-SQL на ORACLE за короткий промежуток времени.

Что касается начальных точек, я думаю, что есть простой пример в примерах qt.

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