使用coldfusion 8,从表中选择的blob值显示为“[empty string]”。
我的cfml有错误还是有其他问题?
我很感激帮助!
ColdFusion服务器 - 8,0,1,195765
Oracle数据库11g - 11.2.0.3.0 - 64位
BLOB测试 -
<cfset idval="1">
<cfset val="hello world">
<cfset encoding="utf-8">
<!---STRING CONVERSION TO BINARY DATA--->
<cfset form.binVal = CharsetDecode(val,encoding)>
<cfdump var="#form.binVal#">
<!---CLEAR TABLE--->
<cfquery name="delete" datasource="DATA1">
DELETE FROM DATA1.TEST_BLOB
</cfquery>
<!---INSERT--->
<cfquery name="insert" datasource="DATA1">
INSERT INTO DATA1.TEST_BLOB
VALUES(<cfqueryparam value="#idval#">,
<cfqueryparam cfsqltype="CF_SQL_BLOB" value="#form.binVal#">
)
</cfquery>
<!---SELECT AND DISPLAY DATA--->
<cfquery name="select" datasource="DATA1">
SELECT *
FROM DATA1.TEST_BLOB
</cfquery>
<cfdump var="#select#">
答案 0 :(得分:0)
获得结果需要utl_raw.cast_to_Varchar2()
:
<cfquery name="select" datasource="DATA1">
SELECT UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(*name_of_field*))
FROM DATA1.TEST_BLOB
</cfquery>
或强>
在不投射的情况下返回数据
转到DSN的CF管理员设置,有启用BLOB数据的高级设置