如何在SQL Server中的SELECT中显示CLOB类型?

tom*_*234 13 t-sql database sql-server clob

我有一个包含一列CLOB类型数据的表,它们都非常短,不超过20个字节,但是我无法在CLOB数据中看到实际的字符串.

例如,如果我使用SELECT *,在CLOB类型下,每个数据都像:

CLOB, 8 Bytes
CLOB, 15 Bytes
CLOB, 9 Bytes
Run Code Online (Sandbox Code Playgroud)

但我只是想看看CLOB数据的内容.

我试过了:

SELECT DBMS_LOB.SUBSTR(ClobColumnName, 20 ,1)
Run Code Online (Sandbox Code Playgroud)

它不起作用,错误是:

错误代码:4121,SQL状态:S1000
无法找到列"DBMS_LOB"或用户定义的函数或聚合"DBMS_LOB.SUBSTR",或者名称不明确.

那么我可以问一下在查询中直接显示CLOB数据的语法是什么?

我正在使用SQL Server dbVisualizer.

tom*_*234 20

我找到了一个解决方案.应该有更好的方法,请在评论中显示更多可能的解决方案.

SELECT CAST(ClobColumnName AS VARCHAR(50)) AS ClobColumnName ;
Run Code Online (Sandbox Code Playgroud)


小智 5

在将消息/数据存储到CLOB列中之后,发现有一种解决方案具有一列具有CLOB数据类型(1000K)的表,并且发现一种解决方案可以在CLOB列中看到实际数据。

  SELECT CAST(T.CLOB_COLUMNNAME AS VARCHAR(1000)) AS SAMPLEDATA 
  FROM TABLE_NAME AS T 
Run Code Online (Sandbox Code Playgroud)

上面的查询将CLOB(字符大对象)转换为普通的String。