问题标签 [prepared-statement]

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 投票
4 回答
1819 浏览

mysql - JDBC prepareStatement 不起作用

我正在尝试使用该prepareStatement功能。代码如下。执行后,它会返回一堆vlicense字符串而不是值。

当代码完成时statement.setString(),语句变为:

但是,它必须是:

不带引号。谁能告诉我有什么问题?

0 投票
5 回答
3880 浏览

java - Tomcat 中的 PreparedStatement 缓存

我正在寻找一种实现 PreparedStatement 缓存的方法,以便为过去已经执行的查询节省重新创建 PreparedStatement 对象。

是否有一些内置方法可以使用 Tomcat 实现这一目标?还是我必须自己编程这个缓存?

0 投票
2 回答
3094 浏览

tomcat - 在 Tomcat 中缓存准备好的语句的好策略是什么?

我正在寻找一种在 servlet 环境(特别是 Tomcat 5.5)中缓存准备好的语句的方法。这是为了减少创建准备好的语句的次数,connection.prepareStatement(sql)即被调用的次数。

我最初的想法是将PreparedStatement对象存储在会话中,其中键(属性名称)是查询本身。这也可以懒惰地完成。

但是,有人提醒我,根据 JDBC 驱动程序的实现,同一准备好的语句可能会同时被 2 个线程(或请求)访问,从而导致例如设置错误的参数。因此,对这些语句对象的访问需要同步。

实现这一目标的好策略是什么?

是否有内置于 tomcat 的方法来执行此操作?我已经看到了这个答案,它提到了poolPreparedStatementsDBCP 参数,但是从文档中并不清楚它是否与我正在寻找的含义相同。

0 投票
3 回答
11552 浏览

php - 当我在对象上调用函数时,为什么在非对象上出现此函数调用错误?

错误:

致命错误:在第 76 行的 /var/www/web55/web/pdftest/events.php 中的非对象上调用成员函数 bind_param()

代码:

$this->link->prepare($sql)为 MySQLi 创建一个准备好的语句。

为什么我会收到此错误?

0 投票
4 回答
2746 浏览

java - 为什么我需要连接才能创建 PreparedStatements?

出于多种原因,我想使用准备好的语句。但是,我想创建一个如下所示的方法:

换句话说,我希望我的应用程序逻辑只需要制定查询和输入参数,而不是处理连接和语句。但是,PreparedStatements 是从连接对象创建的,因此我目前被迫使用 String.format() 准备查询字符串 - 丑陋且危险。

有没有办法在不使用 String.format() 的情况下做我想做的事?

0 投票
2 回答
1719 浏览

mysql - Mysql Prepare 语句获取变量中的列值

谁能给我关于如何将列值转换为变量的任何想法。例如 -

声明 TD int; 声明 Cnew Varchar(10);

SET @a = Concat('Select Count(*) into ', TD, 'From tb1 where C1 =', Cnew, ';');

如何将计数(*)带入 TD????

提前致谢。

0 投票
2 回答
987 浏览

php - 为 MySQLI 使用初始化的预准备语句时,leftjoin 是如何工作的?

用户从一个不同的页面来到这个页面,他们点击一个链接,?photo_id=然后附加一个 id 编号。我希望查看者到达此页面时可以使用某些信息。

我希望他们能够看到照片、照片名称和摄影师姓名。前两个不是问题,因为photo_id,photo_filenamephoto_title都在同一个表中。一旦我尝试获取有关这张照片的信息,该信息位于另一个名为 的表格photographers中,那就是我遇到问题的时候。

这是我的代码:

前三个变量($photo_id$photo_title$photo_filename)工作正常,我可以在我的页面上回显它们,但我从 LEFTJOIN 添加的其他变量(例如来自不同表的photographers.photographer_idphotographers.photographer_name)将不起作用。众所周知,当我在 SELECT 行上添加额外的列名时,页面完全中断。

我感觉它与bind_result()函数中的变量数量有关。我认为他们需要匹配 SELECT 行中提到的列数,但我真的不想为每个列创建一个变量。

有人可以帮帮我吗?

0 投票
2 回答
4398 浏览

php - 如何使用带有 mySQLi 的准备好的语句更新多个表?

我有一个表单,其中包含两个字段,名称属性分别为“photo_title”和“photographer_name”,以及一个名为“photo_id”的隐藏字段。当用户按下提交按钮时,我希望它更新数据库中的两个单独的表。我可以让它更新一个表,但是一旦我尝试离开第二个表,它就不喜欢它。

我认为我的查询字符串或绑定可能有问题。如何在 Mysql 数据库的两个单独表中更新两个单独的值,同时仍然使用准备好的语句?

这是PHP:

这是表格:

0 投票
7 回答
17227 浏览

php - 如何将 MySQLi 准备好的语句的结果放入关联数组中?

我有一个 sql 查询和一个 mysqli 准备好的语句:

如何将结果存储在关联数组中,以便稍后循环并获取 sql 字符串返回的所有数据?

0 投票
3 回答
6315 浏览

sql-server - 如何为 JDBC PreparedStatement 设置 IDENTITY_INSERT 选项?

我需要将数据复制到具有标识列的 MSSQLServer 2005 数据库表中。

我已经看到如何通过执行禁用标识列

在插入查询之前。

当我使用 PreparedStatements 进行批量插入并且在操作期间无法更改语句时,我该怎么做?