问题标签 [qtsql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1393 浏览

qt - 部署 Qt ODBC 应用程序

我的应用程序以这种方式使用 Qt SQL

其余的都是使用QSqlRelationalTableModel.

现在部署阶段已经到来,应用程序在安装了 Qt (4.6.3) 的系统上完美运行,但在另一个干净的系统上,加载数据库时出现此错误

我知道这与复制 ODBC 插件有关......但只是复制qsqlodbc4.dll到应用程序目录和

不行!!

解决方案是什么

注意:该应用程序未链接到驱动程序 DLL,它使用 Qt 插件机制。

0 投票
2 回答
2671 浏览

oracle - 为什么 QOCI 插件不起作用

我正在尝试将 Qt 与 QOCI 一起使用(实际上,以及其他插件),但由于某种原因我不能。这是我所做的和结果:

1- http://doc.qt.nokia.com/latest/sql-driver.html#qoci 插件搭建成功。

2- 将插件调试和发布 dll 和 lib 文件复制到 plugins/sqldrivers 和 OCI.DLL 到 %WINDIR%\system32(plugins/sqldrivers 是其他插件如 QPSQL 和 QMYSQL 所在的位置)

3- QSqlDatabase::isDriverAvailable(QOCI) 返回 false,它为 QMYSQL 和 QPSQL 返回 true。我对 QMYSQL 和 QPSQL 做了同样的事情

4- QStringList qsl = QSqlDatabase::drivers(); 返回的字符串列表中没有 QOCI。但是有 QMYSQL、QPSQL 和其他一些。

附加检查:使用依赖 walker 打开 qsqloci4.dll,无法找到 3 个 dll:1-QtCore4.dll 2-QtSql4.dll 3-MSVSC80.dll 但是,使用依赖 walker 打开 qsqlpsql.dll 时也无法找到它们。我相信加载 dll 并没有因为 qsqloci4.dll 的依赖而失败。但是,仍然欢迎任何想法。

消息

失败!!!请注意,这两个文件都存在于给定路径中。

我相信由于这个错误,Qt 也无法加载插件。现在的问题有点不同,但是为什么 LoadLibrary 在这种情况下会失败?有任何想法吗?

提前致谢。

0 投票
1 回答
335 浏览

python - 如何在 Python 中使用 Qt 数据库?

我从 PyQt 开始,听说 Qt 带有一个名为 QtSQL 的特殊数据库模块。该模块的文档与 Qt 中的所有内容一样,仅涵盖 C++ 用法。在我的工作中,我需要一个数据库,该数据库可以被多个软件同时访问(本地网络)。我想知道是否有人使用 QtSQL 并可以提供一些关于如何了解更多信息的提示。是否可以在本地网络中使用它?安装 PyQt4 后是否可以使用,还是我需要安装更多东西?那么许可证呢?

0 投票
2 回答
9082 浏览

qt - Qt - QSql 无法获取行,尝试插入时没有查询

我正在尝试将数据插入表中。这是代码:

这是我用来创建表的内容:

我收到此错误:

QSqlError(-1, "无法获取行", "无查询")

我不确定我做错了什么。你能找到什么吗?

0 投票
1 回答
1078 浏览

linux - QIBASE 问题(火鸟 + Ubuntu)

早上好。

我尝试使用 %QTDIR/demos 中的 sqlbrowser 编译 QIBASE 驱动程序以访问 FireBird 数据库。但是在我填写了 sqlbrowser 中的所有字段并按下 OK 按钮后,程序崩溃并显示消息:

要编译 QIBASE 驱动程序,我已完成以下步骤:

  1. 将 FirebirdCS-2.5.0 安装到 /opt/firebird。
  2. 将 qt 源解压缩到 /opt/qt4。
  3. 编译QIBASE驱动:

    cd /opt/qt/src/plugins/sqldrivers/ibase qmake -o Makefile "INCLUDEPATH+=/opt/firebird/include" "LIBS+=-L/opt/firebird/lib/libfbclient.so" ibase.pro

  4. 把 libqsqlibase.so 放到 /usr/lib/qt4/plugins/sqldrivers

  5. 填写 sqlbrowser 中的所有字段,推送 OK 和 propgram 崩溃并显示上述消息。

数据库正常:我已连接到它并通过 isql 执行查询。

请帮我解决问题。谢谢你。

Ubuntu 10.10、Qt4、火鸟 2.5.0。

0 投票
1 回答
3263 浏览

c++ - 更新 QSqlTableModel 中的记录

我正在尝试更新记录,我有这个:

该应用程序编译没有错误,但它不会保存任何编辑。

0 投票
1 回答
5908 浏览

mysql - QSql 连接并从数据库示例中读取?- 未加载驱动程序

我最近开始发现需要从_ _mysql 模块更改为 PyQt 的 QSql,但不知道从哪里开始。我想做的(现在)就是从数据库中读取并打印结果。这是我得到的最远距离,但我不断收到从 query.exec_() 函数返回的“驱动程序未加载驱动程序未加载”错误。

请帮忙!

0 投票
1 回答
1053 浏览

qt - Qt:使用 QtSql 实现 QAbstractItemModel 的示例(与 QTreeView 一起使用)

我正在寻找与 QTreeView 一起使用的 QAbstractItemModel 的示例实现。该模型应该从 QSqlQuery 加载数据,并且应该以“懒惰”的方式进行。换句话说,我只想加载打开的节点/父节点的记录。我想看看如何在这个模型中正确添加和删除记录。

我尝试自己实现这样的模型,但遇到了很多不同的错误,尤其是当我开始添加和删除行时。

如果你知道我在哪里可以找到这样的例子,我将不胜感激。

谢谢 :)

0 投票
1 回答
777 浏览

qt - Qt 数据库内容视图/操作作为列表视图

我有一个数据库,应该在小部件中查看哪些表。看起来很简单,但我无法决定使用什么或使用什么。

表格的每一行都应该被视为一个列表视图项,例如,想象具有以下字段的表格:id、title、content、date、number

我需要将其视为列表视图(不是硬编码,也可能是另一回事,如果可能或更好),并且列表视图项的标签应该是标题字段。但是当用户单击或双击该项目时,它应该在单独的小部件中打开当前行的所有内容。所有这些都可以由我轻松实现,但我不明白该使用什么:QListView 及其模型,还是 QListWidget?或者可能是 QSqlTableModel?最后一个对我来说不熟悉,我可以从文档中阅读,但是如果您听说过或遇到过一些类似的事情/应用程序,请为所描述的问题提供更好的解决方案。

希望我能正确解释我的问题,在此先感谢。

0 投票
1 回答
7527 浏览

c++ - 参数化查询中的参数计数不匹配

出于性能原因,我在代码中使用了很多参数化查询。简而言之,其中一些有效,有些无效。

我在构建数据库包装器期间初始化查询,如下所示:

myqueryQSqlQuery我的数据库包装器的成员变量。稍后,在想要使用这个查询的函数中,我做了类似的事情

我总是收到相同的错误消息/输出:

异常并不奇怪,但参数计数不匹配是。调用boundValues实际上显示了正确的值和所有内容,但我仍然收到此错误消息。我有类似的查询可以正常工作。

我尝试替换位置绑定值,重命名占位符,使用?和位置绑定值,但都无济于事。有谁知道问题可能是什么?

我使用 Qt 4.7.3 和 SQLite 3.7.4-2