在触发器中打印'Something'时输出在哪里?

时间:2012-09-26 11:49:40

标签: asp.net triggers sql-server-2008r2-express

我正在使用SQL Server 2008 R2

如果我想从触发器向我的.aspx页面显示Print语句,是否可以从触发器返回任何变量值?

是否可以在列值上使用字符串函数,即String.Contains()String.Split()

1 个答案:

答案 0 :(得分:3)

将其发送到运行查询的客户端。更具体地说,根据MSDN:

“消息作为信息错误返回给使用SQLClient命名空间或ActiveX数据对象(ADO),OLE DB和开放式数据库连接(ODBC)应用程序编程接口(API)的应用程序.SQLSTATE设置为01000,将本机错误设置为0,并将错误消息字符串设置为PRINT语句中指定的字符串。该字符串将返回到DB-Library应用程序中的消息处理程序回调函数。“

如果触发器中有PRINT,它将冒泡到导致触发器被调用的查询。

如果您想通过ASP.NET显示它,您需要订阅SqlConnection.InfoMessage事件。

示例代码: http://msdn.microsoft.com/en-us/library/a0hee08w.aspx