Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database SqlException错误代码_Database_Sqlexception_Error Code - Fatal编程技术网

Database SqlException错误代码

Database SqlException错误代码,database,sqlexception,error-code,Database,Sqlexception,Error Code,我有一个问题,这不是问题。 我的数据库有一些限制,例如唯一名称(存储必须唯一的名称的列) 在插入或更新时,db验证我们是否没有覆盖某个名称,如果是,则返回一个可转换为SqlException的错误,代码为2627 我的问题是。。。如果存在一些表格或我可以参考的东西,以指示最终用户应该做什么 在这种情况下。。存在一个同名的用户….我认为,您应该查看SqlExceptions,并查看哪个应该将您指向master.dbo.sysmessages表中的消息。我认为,您应该看看SqlExceptions,

我有一个问题,这不是问题。 我的数据库有一些限制,例如唯一名称(存储必须唯一的名称的列) 在插入或更新时,db验证我们是否没有覆盖某个名称,如果是,则返回一个可转换为SqlException的错误,代码为2627

我的问题是。。。如果存在一些表格或我可以参考的东西,以指示最终用户应该做什么


在这种情况下。。存在一个同名的用户….

我认为,您应该查看SqlExceptions,并查看哪个应该将您指向master.dbo.sysmessages表中的消息。

我认为,您应该看看SqlExceptions,看看哪个应该指向master.dbo.sysmessages表中的消息。

不要假设特定的错误代码总是指向同一个问题

select * from master.dbo.sysmessages where description like '%timeout%' 
这将为您提供以下所有可能的错误消息-所有消息均带有代码
1033

为超时提供的值无效。超时必须是介于0和2147483647之间的有效整数。1033

等待闩锁时发生超时:类“%ls”,id%p,类型%d,任务0x%p:%d,等待时间%d秒,标志0x%I64x,拥有任务0x%p。继续等待。1033

与远程服务器实例''%1!''的通信未能在超时之前完成。ALTER DATABASE命令可能尚未完成。请重试该命令。1033

数据库镜像超时值%d超过最大值32767。1033 由于锁定超时,未检查数据库ID(%d)中的元数据缓存项%d:%d的一致性。1033

标记的事务''%1!''失败。尝试通过提交标记的事务在日志中放置标记时发生超时。这可能是由与Microsoft分布式事务协调器(MS DTC)事务或其他1033事务争用引起的

SQL Server目标的大容量插入操作已超时。请考虑在数据流中增加SQLServer目标的超时属性的值。1033

…以及所有语言中的更多错误

所以可以安全地假设
1033
意味着某种超时?不幸的是,即使这样也不是真的:

select description from master.dbo.sysmessages where msglangid=1033
警告:致命错误%d发生在%S\u日期。请记下错误和时间,并与系统管理员联系

Waitfor中不允许查询

靠近'%1!'的语法不正确

以'%1!'开头的%1!'消息太长。最大长度为%d。 如果语句包含UNION、INTERSECT或EXCEPT运算符,则ORDER BY项必须出现在选择列表中

订单编号%ld超出了选择列表中的项目数范围

还有更多与超时无关的错误

所以我坚持:

IsSqlTimeout = ((ex as SqlException).Message.ToUpper().Contains("TIMEOUT");
所以要真正回答你的问题——这取决于你的用户能够理解或应该被告知什么


我建议您记录一段时间内的所有错误(代码和消息),对它们进行分组,并查看您的环境中最常见的错误。

不要假设特定的错误代码总是指同一问题

select * from master.dbo.sysmessages where description like '%timeout%' 
这将为您提供以下所有可能的错误消息-所有消息均带有代码
1033

为超时提供的值无效。超时必须是介于0和2147483647之间的有效整数。1033

等待闩锁时发生超时:类“%ls”,id%p,类型%d,任务0x%p:%d,等待时间%d秒,标志0x%I64x,拥有任务0x%p。继续等待。1033

与远程服务器实例''%1!''的通信未能在超时之前完成。ALTER DATABASE命令可能尚未完成。请重试该命令。1033

数据库镜像超时值%d超过最大值32767。1033 由于锁定超时,未检查数据库ID(%d)中的元数据缓存项%d:%d的一致性。1033

标记的事务''%1!''失败。尝试通过提交标记的事务在日志中放置标记时发生超时。这可能是由与Microsoft分布式事务协调器(MS DTC)事务或其他1033事务争用引起的

SQL Server目标的大容量插入操作已超时。请考虑在数据流中增加SQLServer目标的超时属性的值。1033

…以及所有语言中的更多错误

所以可以安全地假设
1033
意味着某种超时?不幸的是,即使这样也不是真的:

select description from master.dbo.sysmessages where msglangid=1033
警告:致命错误%d发生在%S\u日期。请记下错误和时间,并与系统管理员联系

Waitfor中不允许查询

靠近'%1!'的语法不正确

以'%1!'开头的%1!'消息太长。最大长度为%d。 如果语句包含UNION、INTERSECT或EXCEPT运算符,则ORDER BY项必须出现在选择列表中

订单编号%ld超出了选择列表中的项目数范围

还有更多与超时无关的错误

所以我坚持:

IsSqlTimeout = ((ex as SqlException).Message.ToUpper().Contains("TIMEOUT");
所以要真正回答你的问题——这取决于你的用户能够理解或应该被告知什么


我建议您记录一段时间内的所有错误(代码和消息),对它们进行分组,并查看您的环境中最常见的错误。

此处报告了各种错误代码的含义:。确保在左侧选择了正确的DB版本。

此处报告了各种错误代码的含义:。确保在左侧选择了正确的DB版本。

缺少括号:var IsSqlTimeout=((例如SqlException)。Message.ToUpper()包含(“超时”);缺少括号:var IsSqlTimeout=((例如作为SqlException.Message.ToUpper().Contains(“TIMEOUT”));