prepared-statement 相关问题

Prepared Statement(或参数化语句)是一种预编译的SQL语句,用于提高性能并减轻SQL注入攻击。准备语句用于许多流行的关系数据库管理系统。

这个 JDBC 程序有什么错误

封装jdbc; 导入 java.sql.*; 导入java.util.Scanner; 公共类表{ 公共静态无效主(字符串[] args){ 字符串名称; 年龄; 扫描仪 sc = 新扫描仪(

回答 1 投票 0

pg_prepare:无法将多个命令插入到准备好的语句中

我有2张桌子,TableA和TableB。 TableB 有一个 fk 字段指向 TableA。 我需要对TableA使用DELETE语句,当删除其中的一条记录时,我需要删除TableB中的所有记录

回答 1 投票 0

ocaml sqlite3 准备好的语句

我在 ocaml 中有以下 sqlite3 的插入,工作正常。 输入文章 = { 作者:字符串;内容:字符串} 让 insert_article db (文章: 文章) = 让 sql = Printf.sprintf "IN...

回答 1 投票 0

单个sql语句在执行过程中重复记录(通过使用准备好的函数)

我对 php 准备函数很陌生,我尝试使用 SQL 准备语句创建记录,以下是我的示例代码: 这是我的 php 文件 我对 php 准备函数很陌生,我尝试使用 SQL 准备语句创建一条记录,以下是我的示例代码: 这是我的php文件 <?php $connection = mysqli_connect('localhost', 'root', '', 'loginapp'); if (!$connection) { die("Database Connection Failed!"); } else { echo "<h1>Database Connected!</h1>"; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Prepare Function</title> </head> <body> <?php $sql = "INSERT INTO `users` (`username`, `password`, `email`) VALUES (?, ?, ?)"; $stmt = mysqli_prepare($connection, $sql); mysqli_stmt_bind_param($stmt, "sss", $user_name, $pass_word, $_email); $user_name = "Rahel"; $pass_word = "Rah667"; $_email = "[email protected]"; if(mysqli_stmt_execute($stmt)){ echo "Record inserted successfully"; } else{ echo "Error: ". mysqli_error($connection); } mysqli_stmt_close($stmt); ?> </body> </html> 这是数据库中的结果 我尝试运行它很多次,但最终得到了单次执行的重复记录 我更新了用户名列并将其设置为唯一,并将我的代码更新为如下所示 <?php $connection = mysqli_connect('localhost', 'root', '', 'loginapp'); if (!$connection) { die("Database Connection Failed!"); } else { echo "<h1>Database Connected!</h1>"; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Prepare Function</title> </head> <body> <?php $sql = "INSERT INTO `users`(`username`, `password`) VALUES (?, ?)"; $stmt = mysqli_prepare($connection, $sql); mysqli_stmt_bind_param($stmt, "ss", $user_name, $pass_word); $user_name = "Steven"; $pass_word = "St30405"; if (mysqli_stmt_execute($stmt)) { echo "Record inserted successfully"; } else { echo "Error: " . mysqli_error($connection); } mysqli_stmt_close($stmt); ?> </body> </html> 现在工作正常🙂

回答 1 投票 0

带有准备语句和 LEFT JOIN 的 SQL 查询给出错误

大家。 对于那些能够很好地管理 SQL 的人来说,我的问题可能很简单。 不管怎样,我有一个查询在 LEFT JOIN 部分给出了错误(也许是语法?)。 我正在使用 PDO 并准备好状态...

回答 1 投票 0

PHP 准备语句未插入,没有出现错误

我正在尝试通过 PHP 中的准备好的语句插入一些数据。我有以下代码,但没有为我插入。我也已经设置了以下代码 ini_set('显示错误', 1...

回答 1 投票 0

如何将SQL查询更改为参数化查询

让查询= select * from (select acf.ID "call_flow_ID", acf.Name "CALL_FLOW_NAME", acf.SLO "SERVICE_OBJECTIVE", acf.LOG_FILTER "LOG_FILTER", acf.Max_jump, (

回答 1 投票 0

带美元引号的字符串连接

我使用串联来准备带有参数值的查询字符串 当我使用单引号时: p_ReqStr_old := ' 与 prm 作为 ( 选择 1::int4 作为 id,' || ' to_timestamp(''' || to_char(

回答 1 投票 0

Postgres SQL 美元引用

我使用串联来准备带有参数值的查询字符串 当我使用单引号时: p_ReqStr_old := ' 与 prm 作为 ( 选择 1::int4 作为 id,' || ' to_timestamp(''' || to_char(

回答 1 投票 0

PreparedStatement 在简单的静态方法查询中有何性能优势?

更新 2 否决票是应得的,并鼓励我编写一个更强大的测试:使用 java 1.8、ojdbc8.jar 针对非生产 Oracle 12C 数据库,我通常是该数据库的唯一用户, 我跑了 10

回答 4 投票 0

java.sql.SQLException:无法在PreparedStatement上调用方法

我想使用 HikariCP 使用 SQLite 连接到 SQLite 数据库。 但是当我尝试运行查询时出现错误。 线程“main”中的异常 java.lang.RuntimeException: java.sql.

回答 1 投票 0

准备好的查询本地主机将数据插入数据库,但不在实时服务器上

我有下面准备好的语句,它在本地主机上运行良好,但是当它在网络服务器上运行时,它不会在数据库中插入数据而没有任何错误。 $insertbuyer = $conn->准备("

回答 0 投票 0

如何创建不带单引号的PreparedStatement? [重复]

如何创建准备好的语句并添加不带 ' ' 的字符串?我创建了此类的PreparedStatement: var query = "选择?从 mytable where rootId = ?"; var 语句 = 连接。

回答 1 投票 0

如何使用 mysqli API 制作完全动态的预准备语句?

我需要更改此查询以使用准备好的语句。是否可以? 查询: $sql = "从任务中选择 ID、标题、内容、优先级、日期、交付" . $操作。 ” “。 $标题。 ” “。 $内容...

回答 1 投票 0

使用准备好的语句时出现“SQL 翻译错误:额外的占位符”

我正在尝试在我的 SQL 中使用准备好的语句,但我无法让它工作。当我在我的代码中添加类似这样的内容时,出现错误“SQL 翻译错误:额外的占位符” 如果($

回答 0 投票 0

未捕获错误:准备失败时调用 bool 上的成员函数 bind_param() [重复]

我正在编写一种方法,使用 php prepare 语句使用 Where IN 子句更新一些记录。这是我的方法 公共函数 updateWhereIn($table, array $where, $data) { 如果($哪里=...

回答 1 投票 0

带有十六进制文字的 JDBC PreparedStatement

我有一个 Mysql 兼容的十六进制文字,例如 X'4D7953514C' 我如何使用 PreparedStatments 分配这样的值,我尝试了 setString 但该值被包含在引号中。 目标是

回答 1 投票 0

Athena JDBC 参数化查询未正确解释类型

出现此错误 - java.sql.SQLException:[Simba]AthenaJDBC Athena 不支持参数类型:java.lang.String。 我使用 com.simba.athena.jdbc.Driver 作为 Athena JDBC 驱动程序。 时间开始...

回答 0 投票 0

使用具有一个或没有值的准备语句

我一直在慢慢地将我所有的站点转换为我的 Ubuntu 开发系统上 mysql 中的准备好的语句,并且除了像这样的一些剩余问题之外,我正在掌握它。 这个小...

回答 0 投票 0

php 使用 mysql 视图准备好的语句不返回任何结果

我们已经在我们的代码中准备了像这样使用常规 mysql 表的语句 $sql = "SELECT count(*) FROM table1 "; $stmt = $db->准备($sql); $stmt->执行(); $stm...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.