c# - 使用 mysqlexception 捕获特定键

标签 c# mysql sql exception

所以我捕获了 MySqlException,因为我知道我尝试输入重复的主键。如果我调用消息,它会显示例如:

"Duplicate entry '2' for key 'PRIMARY'

所以它知道哪个键导致了问题,有没有办法可以从异常中获取该键(在本例中为“2”)?我尝试调试它,但找不到它存储值的位置。

最佳答案

插入方法:如果您使用循环来插入每个值,则;

You can find it by using a try-catch statement.

从方法插入:如果您使用插入语句从另一个表或 View 插入值;

Add a Where-Clues to your select statement, to insert not-exist values.

像这个:

WHERE Not (ID IN (SELECT ID FROM DestinationTable)) 

要查找所有重复项,请使用没有 Not 的Where-Clues,这样您就拥有了所有重复项。

关于c# - 使用 mysqlexception 捕获特定键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29309765/

相关文章:

c# - 使用DirectSound设置不同的音频输出

c# - 在 C# 中打印 Win Form 时如何提高打印质量

c# - 无法使用 c# 导航到 Windows Metro App 上的页面

php - 如果条件为真,安全 MYSQL 插入多行

mysql - 组连接查询mysql

c# - .NET - System.Collections.Immutable 某处是否有单向链表?

mysql - 更新表,然后删除行(如果未设置)

mysql - SQL JOIN 显示重复行

c# - dapper:#tempDB 已创建但在下一个查询中不可用

mysql - 获取给定日期范围内的连续月份