【△△△】如何同MS查询分析器一样俘获出错语句的具体行列?【▲▲▲】

xthmpro_cn 2006-05-16 11:04:28
如题,如果SQL语句出错,SQL查询分析器会用红字报告具体出错的行 等信息,如:

服务器: 消息 195,级别 15,状态 10,行 1
'DB_Namea' 不是可以识别的 函数名。

请问如何获取这个信息?

首先谢谢各位!

问题解决后加满200分。
...全文
127 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xthmpro_cn 2006-05-18
  • 打赏
  • 举报
回复
如楼上所说,SQL 2005中的方法我是知道的,但是这个不能应用在SQL2K中,不能通用,我希望可以通用在SQL 2K 系列数据库上。

仍然非常感谢各位的回答,我将继续关注。
postren 2006-05-17
  • 打赏
  • 举报
回复
真是难啊

在SQL Server 2005中用如下语句可以获得错误的级别、消息编号、消息内容等信息,但对于对象不存在等错误没法弄,不知道是什么原因

BEGIN TRY
-- Generate a divide-by-zero error.
SELECT 1/0 --这里的错误可以体现在下面的Catch结果,返回Delphi中有两个数据集,一个是空数据集,一个是错误信息数据集
END TRY
BEGIN CATCH
select
ERROR_NUMBER() as [number],
ERROR_LINE() as [line],
ERROR_SEVERITY() as [severity],
ERROR_MESSAGE() as [message],
ERROR_PROCEDURE() as [procedure],
ERROR_STATE() as [state]
END CATCH
huanying3990 2006-05-17
  • 打赏
  • 举报
回复
如果你要真想解决这个问题,你可能要好好研究一下delphi的系统报错器,可能会得到解决的方案!
cncharles 2006-05-17
  • 打赏
  • 举报
回复
可能要用SQLDMO才能捕获吧,
以前也这样想过没有成功.
xthmpro_cn 2006-05-17
  • 打赏
  • 举报
回复
我的帖子怎么总是在最后面???

请各位多多指教。
ly_liuyang 2006-05-17
  • 打赏
  • 举报
回复
这个不知道了
给你Up

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧