使用print

使用 PRINT

SQL Server 2008 R2

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

PRINT 语句接受任何字符串表达式,包括字符或 Unicode 类型的常量和局部变量名,或返回字符或 Unicode 字符串的函数。PRINT 还接受由两个或多个常量、局部变量或函数串联生成的复杂字符串。

使用 PRINT 可以帮助我们排除 Transact-SQL 代码中的故障、检查数据值或生成报告。

下面的示例在 IF 语句使用了 PRINT,以在 Hex Nut 17 产品编号低于 1100 时返回消息。

USE AdventureWorks2008R2;
GO
IF (SELECT SUM(i.Quantity)
    FROM Production.ProductInventory i
    JOIN Production.Product p 
    ON i.ProductID = p.ProductID
    WHERE Name = 'Hex Nut 17'
    ) < 1100
    PRINT N'There are less than 1100 units of Hex Nut 17 in stock.'
GO

下面的示例使用串联打印局部变量、系统函数和文本字符串的组合。

USE AdventureWorks2008R2;
GO
DECLARE @MyObject NVARCHAR(257);

SET @MyObject = N'Production.Product';

PRINT N'Object Name: ' + @MyObject
PRINT N'   Object ID: ' + STR(OBJECT_ID(@MyObject))
GO

下面的示例说明了通过串联字符串生成打印消息的两种方法。

-- Build a print message by concatenating strings in a PRINT
-- statement.
PRINT N'The Database Engine instance '
    + RTRIM(@@SERVERNAME)
    + N' is running SQL Server build '
    + RTRIM(CAST(SERVERPROPERTY(N'ProductVersion ') AS NVARCHAR(128)));
GO
-- This shows building a character variable that is used to
-- print a message.
DECLARE @Msg NVARCHAR(300);

SELECT @Msg = N'The Database Engine instance '
    + RTRIM(@@SERVERNAME)
    + N' is running SQL Server build '
    + RTRIM(CAST(SERVERPROPERTY(N'ProductVersion') AS NVARCHAR(128)));

PRINT @Msg;
GO
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值