> Я, конечно, всё понимаю, но зачем в QT поддержка Sqlite? И если
> она есть, то есть ли поддержка MSSQL и постгреса?Я выше дал ссылку, там полный список. Есть даже оракл.
> Разве он не должен просто окошки рисовать?
Создатели Qt решили, что там должно быть все, начиная от работы со строками (QString и все унаследованные классы + функции для работы) и структур данных (обертки над массивами/очередь/стек/словарь и тп) и сетевых взаимодействий (свой API и уровня сокетов, и высокоуровневые взаимодействия по куче протоколов) до XML, SQL и кучи всего. И да, это все можно использовать в отрыве от гуя, библиотеки, предоставляющие это отделены от гуевых и не требуют их.
Хорошо это или плохо - тут можно разные точки зрения иметь. Надо понимать, что когда Qt появился, STL еще толком никто не использовал, шаблонов либо не было, либо они были убогими, с поддержкой юникода в плюсах было плохо и куча других особенностей середины 90'ых. Qt реализовывал обертки над структурами C++ либо свои структуры и давал возможности, которых не было в базовом языке. Qt реально расширял C++ штуками типа сигналов и слотов, которые реализовывались через свой препроцессор (moc), устраняя проблему отсутствия С++ шаблонов в компиляторе. И так далее.
> И всё это в условиях, когда почти для любого языка есть pip,
> npm, nuget, cargo.
С современной точки зрения вы правы (впрочем, как можно заметить, ни один из этих инструментов не работает для C++), но 20 лет назад при разработке переносимого тулкита заодно иметь переносимую между платформами и компиляторами реализацию всяких высокоуровневых штук было неплохой идеей. Хотя в первых Qt никаких SQL, конечно, не было, но структуры данных уже были.