有一个操作是很多用户经常使用的,这是将某个字符串添加到不允许添加重复值的列中,因为该操作经常使用。我将检查字符串唯一性的责任转移给数据库,数据库很好地处理了这个问题,如果字符串重复则返回 HResult -2146233087,我想阅读有关此错误代码的文档以确保此代码不会来自另一个数据库错误
我尝试查找 Microsoft 文档,但找不到。
我认为你不想看
HRESULT
。您可能正在寻找的是这样的东西:
try
{
//…
}
catch (SqlException x) when (x.Number == 2601 || x.Number == 2627)
{
//2601: Cannot insert duplicate key row in object '%.*ls' with
// unique index '%.*ls'. The duplicate key value is %ls.
//2627: Violation of %ls constraint '%.*ls'. Cannot insert duplicate
// key in object '%.*ls'. The duplicate key value is %ls.
}
请参阅 https://learn.microsoft.com/sql/relational-databases/errors-events/database-engine-events-and-errors-2000-to-2999 了解所有错误代码。