java - 如何从Mysql表中删除一个匹配项?

标签 java mysql prepared-statement

我有一个包含以下字段的表:

 PersonnelTable Table fields:

 * FirstName
 * LastName
 * Address
 * IdNumber
 * UserName
 * Password
 * Status

在该表中我允许重复记录。

我想从该表中删除一个出现的位置:

String sqlStatement = "DELETE FROM `PersonnelTable` WHERE `Password` = ? AND `UserName` = ? ";
m_prepared.setString(1, _password);  // set the password
m_prepared.setString(2, _username);  // set the user-name
int rowsAffected = m_prepared.executeUpdate();

但是该查询将删除 Password = ?UserName = ? 的所有记录

如何使用该查询仅删除一条记录?

谢谢

最佳答案

LIMIT 子句也可以在 UPDATEDELETE 语句中使用:

"DELETE FROM `PersonnelTable` WHERE `Password` = ? AND `UserName` = ? LIMIT 1"

关于java - 如何从Mysql表中删除一个匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11931546/

相关文章:

mysql - MySQL 中的表内表?

php - PDO INSERT INTO 不起作用

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

sql - 参数化语句能阻止所有SQL注入(inject)吗?

java - 平均值、中位数、方差计算器

mysql - 如何在一个sql查询中显示所有字段和数字计数

java - Google Java 样式 : Import names v. s。导入语句?

python - 极其简单的sql中出现SQL语法错误?

java - 高效合并两个 Map ArrayList

Java 简单串行连接器 (jSSC) : getInputBufferBytesCount returns zero