问题标签 [sqlbindparameter]
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.
mysql - 使用绑定调用服务器存储过程
我正在尝试使用 Qt 调用 MySQL 服务器存储过程。该过程返回我要检索的多行数据。
我尝试的第一个片段效果很好:
它还返回所需的数据,并且query.first()
像预期的那样是真的。
然后我尝试使用 Qt 文档建议的参数绑定插入参数。我尝试了以下片段。第一个使用索引占位符,第二个关键字占位符。
这两个查询都执行得很好。但query.first()
返回 false 所以我不知道如何得到结果。
我可以通过某种方式从绑定查询中获得结果吗?为什么这不起作用?
php - PHP bind_param 不起作用
我正在尝试通过 PHP 访问 MySQL,但我收到了这些错误消息。
注意:未定义变量:第 60 行 /var/www/contact.php 中的 stmt
致命错误:在第 63 行的 /var/www/contact.php 中的非对象上调用成员函数 bind_param()
我的代码:
sql - Oracle11g 可以在查询执行过程中重新规划一条语句吗?
众所周知,Oracle 11gIS_BIND_SENSITIVE
中有and 。IS_BIND_AWARE
IS_BIND_AWARE
-在 SQL 查询开始之前强制重建 SQL 查询的执行计划IS_BIND_SENSITIVE
-在 SQL 查询开始之前,DBMS 决定是否重建 SQL 查询的执行计划
但是Oracle11g直接在SQL查询运行时重建一个执行计划?
例如,Oracle 长时间为 NLJ(Nested-Loop Join)进行索引查找,然后在查询执行的中间决定取消该策略并进行 HJ(Hash Join)。Oracle11g 可以做到这一点,如果可以,用什么设置?
sqlbindparameter - ODBC 不从表中返回值
我无法通过odbc 获得正确的值。odbc 不是将存储在表中的值返回给变量 rezervovani,而是返回值 -858993460。我怀疑在 sqlbindparameter 中使用了错误的数据类型,但我不知道在哪里。
DSN 连接字符串与错误报告一样从代码中删除。请给建议。
c++ - 使用 ODBC、c++ 时绑定表值参数时出错
我正在尝试使用 ODBC 将表值参数作为存储过程中的参数传递。我遵循了 MSDN 中的示例,但在调用SQLBindParameter时收到以下错误:
HY004 [Microsoft][ODBC SQL Server Driver]无效的SQL数据类型
这是我的代码。
我也在 MSDN 上找到了这个:
表值参数列不能绑定为 SQL_SS_TABLE 类型。如果在 ParameterType 设置为 SQL_SS_TABLE 的情况下调用 SQLBindParameter,则返回 SQL_ERROR 并生成一条诊断记录,其中 SQLSTATE=HY004, "Invalid SQL data type"。SQLSetDescField 和 SQLSetDescRec 也会发生这种情况。
但我正在尝试绑定表项,而不是表列。这几乎似乎直接与他们的代码示例中所述的内容相矛盾。我不确定为什么会发生此错误。有任何想法吗?
非常感谢。
database - 如何使用 SQLBindParameter 绑定 datetime2(SQL_C_TYPE_TIMESTAMP)?
我正在尝试使用 SQLBindParameter 为SQL_TYPE_TIMESTAMP
数据类型绑定 datetime2 参数,如下所示
SQLBindParameter(hStmt, 7, SQL_PARAM_INPUT, SQL_C_TYPE_TIMESTAMP, SQL_TYPE_TIMESTAMP, 0, 0, &datetime2, 0, NULL);
也试过这个:
rc = SQLBindParameter(hStmt, 8, SQL_PARAM_INPUT, SQL_C_TYPE_TIMESTAMP, SQL_TYPE_TIMESTAMP, SQL_TIMESTAMP_LEN + 1, 7, &rec.datetime2, 0, NULL);
rc 为 0
当我执行查询(插入)时,
SQLExecDirect(hStmt, const_cast<wchar_t*>(query.c_str()), SQL_NTS);
我收到 22008 sqlstate 错误,指示日期时间字段溢出;
我已经查找了有关此数据类型的任何示例代码,但找不到任何可行的示例,是否有忍者对此类型有解决方案?精度为 7 的 SQL_TYPE_TIME 很好。
sqlite - 我可以在 SQLite3 中一起使用 LIMIT 作为绑定参数吗?
是一个像
在 SQLite3 中可能吗?因为?1
我可以在准备好语句后使用https://www.sqlite.org/c3ref/bind_blob.html绑定参数。但这也可能?2
吗?我无法让它工作,现在我担心我必须为每个 LIMIT 值创建一个准备单独的语句,比如 1、10、100、1000 等。
biztalk - MSDTC 事务管理器无法使用 AmbientTransaction 推送事务
我有一个 BizTalk 解决方案,它会调用一个存储过程来查询和更新表。显然,每次我在负载平衡服务器中测试我的解决方案时都会遇到这个错误。
适配器无法传输要发送端口“SQLAdapter_Sendport”的消息,URL 为“mssql://server//StoredProc?”。将在为此发送端口指定的重试间隔后重新传输。
详细信息:System.Transactions.TransactionManagerCommunicationException:与底层事务管理器的通信失败。
System.Runtime.InteropServices.COMException:由于通信问题,MSDTC 事务管理器无法将事务推送到目标事务管理器。可能的原因是:存在防火墙并且它对 MSDTC 进程没有异常,两台机器无法通过它们的 NetBIOS 名称找到彼此,或者两个事务管理器之一未启用对网络事务的支持。
来自 HRESULT 的异常:
System.Transactions.Oletx.ITransactionShim.Export(UInt32 whereaboutsSize, Byte[] whereabouts, Int32& cookieIndex, UInt32& cookieSize, CoTaskMemHandle& cookieBuffer)
在 System.Transactions.TransactionInterop.GetExportCookie(Transaction transaction, Byte [] 行踪的0x8004D02A) )
--- 内部异常堆栈跟踪结束 ---
我已经阅读了一些文章,我应该如下设置 DTC 属性。这些我已经在 BizTalk 和 SQL Server 中设置了。
此外,必须在 Windows 防火墙中添加 DTC。
最后,如果发送端口属性中的 useAmbientTransaction 设置为 True,我会一直遇到上述错误。
但是,如果我将 useAmbientTransaction 设置为 False,则消息在 SQL 中成功。
我在一些文章中读到微软不建议将 useAmbientTransaction 设置为 False,尤其是在存储过程中涉及更新和删除的情况下。但是我的解决方案在存储过程中使用了删除和更新,这就是为什么我需要将它的 useAmbientTransaction 设置为 True。但如果我这样做,我会不断遇到错误“MSDTC 事务管理器无法将事务推送到目的地......”
请为此提出任何可能的解决方案。
db2 - 具有可变长度字符串的 SQLBindParameter
如何使用 SQLBindParameter 以节省内存的方式将字符串数组写入 DB2 中的 VARCHAR 字段?
DB2 文档中的示例就是这样做的
我可以让它毫无问题地工作,但它不是很有效,因为每个字符串都使用 256 个字符(+空终止符)存储,而不管其实际长度如何。更一般地说,如果你有一个很长的字符串(比如 500 个字符)并且每个其他字符串都是一个字符,你仍然需要一个大小为 [NUM_STRINGS][500] 的二维数组,这会浪费大量内存。
我想做的是将 SQLBindParameter 传递给一个看起来像的数组
其中数组的每个元素都指向一个字符串。这会更节省内存,因为每个字符串只使用它需要的空间,但我不知道如何使用 SQLBindParameter 让它工作。任何帮助,将不胜感激。
注意:任何 DB 的一般答案都会很好,但特定于 DB2 的答案也会有所帮助。
我正在使用的大小涉及数百万个长度各不相同的字符串,因此内存效率是一个重要因素。
我实际上是在 Linux 上使用 DB2,但对于这个特定的用例,我能找到的唯一示例是 DB2 for z/OS 文档。除了内存使用问题外,它确实可以正常工作。
postgresql - PgSQL:将列值分配给变量使查询参数未绑定
运行以下代码时:
PostgreSQL 生成以下查询计划:
但是在删除变量并在条件下pattern
内联之后:row.patt
where
PostgreSQL 将参数视为绑定:
我知道后一种计划采用顺序扫描,因为 PostgreSQL 假定绑定参数以通配符开头。
我的问题是为什么额外的分配会打开和关闭绑定参数?