使用 text、ntext 和 image 函数

以下函数仅用于对 textntextimage 数据执行操作。

  • TEXTPTR 返回一个包含指向 textntextimage 实例的指针的 binary(16) 对象。该指针在删除行之前一直有效。
  • TEXTVALID 函数用于检查指定的文本指针是否有效。

文本指针被传递到用于更改 textntextimage 数据的 READTEXT、UPDATETEXT、WRITETEXT、PATINDEX、DATALENGTH 和 SET TEXTSIZE Transact-SQL 语句。

在 Transact-SQL 语句中,textntextimage 数据始终是使用指针或数据地址进行引用的。

下面的示例使用 TEXTPTR 函数来定位与 pubs 数据库的 pub_info 表中的 pub_id``0736 关联的 text 列 (pr_info)。该示例首先声明本地变量 @val。然后将文本指针(一个长二进制字符串)插入到 @val 中,并将其作为参数提供给 READTEXT 语句。将从第五个字节开始返回 10 个字节(偏移量为 4)。

ms190258.note(zh-cn,SQL.90).gif注意:
若要运行此示例,必须安装 pubs 数据库。有关如何安装 pubs 数据库的信息,请参阅下载 Northwind 和 pubs 示例数据库
USE pubs
DECLARE @val varbinary(16)
SELECT @val = TEXTPTR(pr_info) FROM pub_info
WHERE pub_id = '0736'
READTEXT pub_info.pr_info @val 4 10

下面是结果集: 

(1 row(s) affected)

pr_info
----------------------------------------
 is sample

支持使用 CAST 函数从 textvarchar、从 ntextnvarchar 以及从 imagevarbinarybinary 进行显式转换,但是 textimage 数据被截断为 8,000 个字节,ntext 数据被截断为 4,000 个字符(8,000 个字节)。不支持从 textntextimage 隐式或显式转换到其他数据类型。但是,可以执行 textntext,image 数据的间接转换。例如:CAST( CAST( text_column_name AS varchar(10) ) AS int )。

请参阅

其他资源

TEXTPTR (Transact-SQL)
TEXTVALID (Transact-SQL)
文本与图像函数 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助