sqlserver 有没有像raiseerror 这样弹出提示信息。但提示是用Select 查出来的一张表

sqlserver有没有像raiseerror这样弹出提示信息。但提示是用Select查出来的一张表... sqlserver 有没有像raiseerror 这样弹出提示信息。但提示是用Select 查出来的一张表 展开
 我来答
匿名用户
2013-06-28
展开全部
1> EXEC sp_addmessage 60001, 16,
2>    @msgtext = N'User Password Error',
3>    @lang = 'us_english'
4> go
1> EXEC sp_addmessage 60001, 16,
2>    @msgtext = N'用户密码错误',
3>    @lang = '简体中文'
4> go

-- 注: 用户通过sp_addmessage 添加的消息, 可以在sys.message视图中查询


1> BEGIN TRY
2>
3>   -- 抛出自定义错误
4>   RAISERROR(60001, 16, 1);
5>
6> END TRY
7> BEGIN CATCH
8>   PRINT('错误代码 = ' + STR(ERROR_NUMBER()));
9>    PRINT('错误严重级别 = ' + STR(ERROR_SEVERITY()));
10>    PRINT('错误状态代码 = ' + STR(ERROR_STATE()));
11>    PRINT('错误信息 = ' + ERROR_MESSAGE());
12>  END CATCH
13> go
错误代码 =      60001
错误严重级别 =         16
错误状态代码 =          1
错误信息 = 用户密码错误
追问
我意思是显示Select * from Table 中的信息。 按你的写法 我还得用游标一行一行的print。
追答
BEGIN TRY
  -- 抛出自定义错误
  RAISERROR(60001, 16, 1);
END TRY
BEGIN CATCH
  SELECT top 1 * FROM sys.messages where message_id = ERROR_NUMBER()
END CATCH
GO

message_id  language_id severity is_event_logged text
--------------------------------------------------------------------------------
      60001        1033       16               0 User Password Error
(1 行受影响)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式